var mode = "<a href='#' onclick='modeSearch(0,"+obj+",0);'>点击传递自定义类型的变量</a>";
这样写之后输出到页面会变成<a href='#' onclick='modeSearch(0,[object],0);'>点击传递自定义类型的变量</a>
请问怎么办啊 
$("a").onclick 这样的写法是不行的 

解决方案 »

  1.   

    obj是什么变量?。。能把你定义它的语句发上来吗?
      

  2.   

    obj是什么遍历啊,一般传this是可以的。。
    还有一个可以解决你的问题:
    通过监听者模式增加事件监听
    addEventListener....

    而不是通过onclick = "执行函数"
      

  3.   

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>无标题文档</title>
    <script type="text/javascript">
    function modeSearch(a,b,c) {
    alert(b.name);
    }
    var obj = { 'name': 'test' };
    window.onload = function() {
    var mode = '<a href="#" onclick="modeSearch(0,obj,0);">DEMO</a>';
    document.getElementById('demo').innerHTML = mode;
    }
    </script>
    </head><body>
    <div id="demo"></div>
    </body>
    </html>
      

  4.   

    如果你obj是个基本类型,那像你那样写没事。如果是个复杂的数据类型就像下面这样写
    obj必须是个全局变量
    var mode = "<a href='#' onclick='modeSearch(0,obj,0);'>点击传递自定义类型的变量</a>";
      

  5.   

    $("a").onclick 这样的写法是不行的  $("a")是jquery的用法,不能用onclick来执行事件
    可以$("a").click(function(){})
      

  6.   

    点击demo之后跳到新的页面,闪一下之后又回到原来的页面是怎么回事儿啊