繁体   English   中英

如何在动态创建元素的内联onclick事件中传递对象

[英]how to pass object in inline onclick event in dynamically creating elements

我正在动态创建一个表行。 每行都有onclick事件。 当我单击该表行时,我想将行对象传递给函数但我的问题是,在传递该对象时,我得到[object object]字符串。 所以我无法在函数中使用该对象。

请提前感谢一些解决方案。

这是我的代码:

  var row;
  $.each(mydata, function(i,data){
            row+='<tr onclick="myfunction(\''+data+'\')"><td >data.name</td><td >data.age</td></tr>;
    });
 $("#myTable").append(row);

我最好使用jQuery来定义click事件处理程序。 这是您更新的代码:

var $table = $("#myTable");
$.each(mydata, function(i,row){
        $tr = $('<tr>').appendTo($table);
        $tr.on("click", myfunction);
});

将数据对象转换为以下样式字符串。

"{\"name\": \"lenient\", \"age\": 18}" 

然后将其绑定到click事件,您将获得该对象作为click函数内的参数。

尝试添加JSON.stringify()

onclick="myfunction("+JSON.stringify(data) +")"

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM