Jquery更改动态元素名称在IE7中不起作用

时间:2011-09-01 06:33:26

标签: dynamic internet-explorer-7 element jquery

我有一些克隆HTML Select元素的代码。克隆工作正常。

克隆的元素将具有id = {original_element_id} -1

克隆元素后,在IE7中我无法选择元素。例如:

原始元素:

<select name="13">
    <option>Value 1
    <option>Value 2
</select>

克隆元素:

<select name="13-1">
    <option>Value 1
    <option>Value 2
</select>

我试试这个:

$("[name='13-1']").live('click',function() {
    alert(1);
});

这适用于Chrome,但在IE7中它不起作用。

如何在IE7中选择动态创建的元素?

我正在使用Jquery 1.4.2,我尝试过1.4.3,1.4.1,1.4.0,1.6.2

2 个答案:

答案 0 :(得分:2)

我已经测试了我的IE7版本并且工作正常,将脚本更改为以下内容:

$(function() {
    $("select[name='13-1']").live('click', function() {
        alert(1);
    });
});

链接:http://jsfiddle.net/LE9Ed/

<强>更新

动态HTML:http://jsfiddle.net/LE9Ed/1/

答案 1 :(得分:1)

$orig = $('select');

$orig.clone().attr('name', '13-1').appendTo('body');

$("[name='13-1']").live('click',function() {
    alert(1);
});
  1. 这是一个有效的例子:http://jsfiddle.net/B5m6F/5/
  2. 还有一个缺少的括号,您正在使用名称属性