我正在创建一个简单的测验类型的页面。所以我用元素创建了网格。
这是克隆了网格的 div。
Var template = $(".answer-layout-").clone();
循环中元素的监听器是
$("a", template ).click(this.Answer_PickOne_OnClick(item));
函数实现是,
this.Answer_PickOne_OnClick = function (sender, e) {}
我希望当我单击元素时单击操作会被触发。但它在执行代码时被触发。
通过传递参数尝试了很多方法,但失败了。有什么建议请留言
最佳答案
这是因为代码 this.Answer_PickOne_OnClick(item)
实际上执行了您的函数。如果您想将其作为事件处理程序 Hook ,则应该将其包装在函数中:
$("a", template ).click(function() {
this.Answer_PickOne_OnClick(item);
});
关于javascript - on.('click) 动态创建的元素在执行时被调用而无需单击,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33460397/