jquery:克隆对象的名称更改在IE中不起作用?

时间:2010-08-12 09:54:34

标签: jquery jquery-selectors

通过jQuery我动态克隆输入复选框对象,然后我使用这条指令更改其名称:

row.find('[name="ACCCHB_CDARM"]').attr("name",id);

ACCCHB_CDARM是我正在克隆的对象的属性名称。

使用FireFox没有问题,但在IE中它并没有改变原始值!

这段代码是否正确?

非常感谢你。 的Mirco

1 个答案:

答案 0 :(得分:1)

为了重现您的错误,我编写了以下代码,它适用于Internet Explorer 8.0:

<script type="text/javascript">
    $(document).ready(function(){
        var row = $('#row');
        var inp = row.find('[name="ACCCHB_CDARM"]');
        inp.attr("name","NewName");
        alert(inp.attr("name"));
    });
</script>
<div id="row">
    <input type="checkbox" name="ACCCHB_CDARM" />
</div>
NewValue属性更改为name后,

NewValue会收到提醒。

在旧版本的Internet Explorer上看起来像name attribute couldn't be changed dynamically(帖子的日期可追溯到2005年)。 current MSDN documentation for name声明如下:

  

Microsoft JScript允许名称   在运行时更改

在文档中,有关如何动态更改name属性的示例,您将找到以下行:

  

此功能需要 Windows Internet Explorer 7或更高版本

为了得到答案,看起来你正在使用旧版本的Internet Explorer。