我在事件发生后用jquery动态制作一个按钮
var $btnRow = $('<input />')
.attr('type', 'button')
.attr('id', 'myID')
.attr('onclick', 'AddChildRow(this);')
.val('Row');
$btnRow.css({ 'width': '38px', 'padding': '0' });
生成的html就像:
<input type="button" id="myID" onclick="AddChildRow(this);" value="Row" style="width: 38px; padding: 0pt;">
我的js文件中有一个AddChildRow函数。它在FF中完美运行,但在IE中却没有(它不会调用AddChildRow)。以前有人遇到过同样的问题吗?此按钮是动态DIV的一部分 - &gt;表 - &gt; TR - &gt; TD架构。任何帮助将不胜感激。
答案 0 :(得分:3)
尝试以不同方式绑定按钮单击事件并使用jQuery click事件
var $btnRow = $('<input />')
.attr('type', 'button')
.attr('id', 'myID')
.val('Row')
.click(AddChildRow)
.css({ 'width': '38px', 'padding': '0' });
$("div").append($btnRow);
function AddChildRow()
{
alert(this.id);
}
http://jsfiddle.net/hunter/nSCHn/
在IE 6/7/8/9中测试并使用
答案 1 :(得分:0)
您还可以使用jQuery的live()方法。 例如:
$(“#myId”)。live('click',AddChildRow);
并随时在页面上插入myId按钮,因为live()方法将“发现”它并将AddChildRow函数绑定到它。