首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >IE onclick未触发

问IE onclick未触发
EN

Stack Overflow用户
提问于 2011-05-13 08:36:18
回答 2查看 237关注 0票数 0

我在一个事件之后用jquery动态地做了一个按钮

代码语言:javascript
复制
var $btnRow = $('<input />')
    .attr('type', 'button')
    .attr('id', 'myID')
    .attr('onclick', 'AddChildRow(this);')
    .val('Row');
$btnRow.css({ 'width': '38px', 'padding': '0' });

生成的html如下所示:

代码语言:javascript
复制
<input type="button" id="myID" onclick="AddChildRow(this);" value="Row" style="width: 38px; padding: 0pt;">

我的js文件中有一个AddChildRow函数。它在FF中工作得很好,但在IE中就不行了(它不调用AddChildRow )。以前有人遇到过同样的问题吗?此按钮是dynamic DIV -> Table -> TR -> TD架构的一部分。任何帮助都将不胜感激。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-05-13 08:41:55

尝试以不同方式绑定按钮单击事件并使用jQuery click事件

代码语言:javascript
复制
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中测试并工作的

票数 3
EN

Stack Overflow用户

发布于 2011-05-13 08:49:38

您还可以使用jQuery的live()方法。例如:

$(“#myId”)点击(‘.live’,AddChildRow);

并随时在页面上插入myId按钮,因为live()方法会“发现”它并将AddChildRow函数绑定到它。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5986071

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档