javascript - 如何在 jquery html 字符串中包含内联 onclick

标签 javascript jquery html

我正在尝试使用我正在使用 jQuery html 方法更新的 html 字符串添加内联 onclick 事件监听器,但它似乎不起作用,

它似乎也没有添加任何点击事件监听器,当我检查元素时没有看到 onclick 属性。

我是否遗漏了什么,有人可以帮忙吗?

var data = [{
  'a': 1,
  'b': 2
}, {
  'a': 10,
  'b': 3
}];
var str = '';

function sendData(e, data) {
  console.log(data);
}
data.forEach(function(item) {
  str += '<div onclick="' + sendData(item) + '">';
});
jQuery('.container').html(str);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="container"></div>

最佳答案

您错误地连接了 str:

var data = [{'a':1, 'b':2},{'a':10, 'b':3}];
var e = 1;
var str = '';
function sendData(e, data){
  console.log(data);
}
data.forEach(function(item){
    str+="<div onclick=sendData("+ e + "," + JSON.stringify(item) + ")>click</div>";
});
jQuery('.container').html(str);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="container"></div>

关于javascript - 如何在 jquery html 字符串中包含内联 onclick,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51205500/

相关文章:

javascript - Divs show() 在不同的时间,但相关的 CSS 动画都在相同的时间轴上运行。适用于 Chrome 和 IE,不适用于 FF

javascript - 动态添加过滤器到 SVG

javascript - 将值插入空数组?

javascript - window.location 不带条件执行

html - 为什么 IE7 在清除 float 时会导致边距错误?

javascript - 如何将json日期格式转换为普通日期格式。例如 :'/Date(1388412591038)/' 到 '12-30-2013' ?

javascript - 删除javascript对象中的嵌套属性

javascript - 如何在特定的 Div 上添加 Position Fixed,然后在滚动时删除该类

javascript - jquery 获取/设置 href 协议(protocol)

html - 正文和 W3 标准中的 &lt;style&gt; 标签