我有这个代码不适用于firefox:
button.attr("name", i).on("click",function() {
var e = window.event;
var target = (e.target) ? e.target: e.srcElement;
alert(target.name);
});
我认为问题出在事件中,但我不知道如何修复它。
错误信息是:
[14:59:18.721] e is undefined @ http://127.0.0.1:8080/Tesi/javascript/Home.js:4202
提前致谢。
答案 0 :(得分:1)
为什么不使用参数,例如
button.attr("name", i).on("click",function(e) {
var target = (e.target) ? e.target: e.srcElement;
alert(target.name);
});
更多信息
$("#dataTable tbody tr").on("click", function(event){
alert($(this).text());
});
答案 1 :(得分:1)
以这种方式附加单击处理程序将导致函数的范围设置为button元素本身。因此,您可以使用jQuery替换整个event.target部分:
$(this).attr('name');
或原始JavaScript:
this.getAttribute('name');
答案 2 :(得分:-1)
您必须将e作为参数传递。
button.attr("name", i).on("click",function(e) {
var target = (e.target) ? e.target: e.srcElement;
alert(target.name);
});
列昂