我可以使用Javascript重命名我的表单字段吗?如改变:使用Javascript重命名表单字段名称
<input type="text" name="chicken" id="chicken"/>
到
<input type="text" name="horse" id="horse"/>
我可以使用Javascript重命名我的表单字段吗?如改变:使用Javascript重命名表单字段名称
<input type="text" name="chicken" id="chicken"/>
到
<input type="text" name="horse" id="horse"/>
当然是可能的:
var field = document.getElementById("chicken");
field.id = "horse"; // using element properties
field.setAttribute("name", "horse"); // using .setAttribute() method
您可以更改name
属性,但在我看来,你应该不会改变id
。
您可以使用:
document.getElementById("chicken").setAttribte('name', 'horse');
编辑
下面的语句是纯主观的,并且可能不会对SO一些空间。
从W3.org:
id属性在HTML几个角色:
- 作为一个样式表选择。
- 作为超文本链接的目标锚。
- 作为从脚本引用特定元素的手段。
- 作为声明的OBJECT元素的名称。
- 对于由用户代理通用处理(例如,用于识别字段提取HTML页面数据时到数据库中,
翻译HTML文档转换成其他格式等)
正如我看到它,这个ID是一个唯一的标识符,它非常适用于从脚本中检索元素(除此之外),并且我个人希望能够使用相同的选择器来检索这个单一元素,而不管它在运行时期间如何操作。所以,我不会改变它。
例:如果我变换鸡成马,我要记住,它曾经是前鸡,我宁愿记住它的突变我将选择$('#chicken[name=horse]')
,并将其伪造为马使用其他CSS选择器。
一旦你可以访问元对象(即具有getElementById
)你可以改变其name
属性:
el.name = 'horse';
该属性将镜像属性的值。
是的,有可能在使用运行时JS :)
var elementToRename = document.getElementById("chicken");
elementToRename.id = "horse";
elementToRename.setAttribute("name","horse"); = "horse";
你尝试过什么迄今为止改变的数据?你读过关于DOM操作的任何文档吗? – 2013-05-13 11:39:17
如何删除和添加新元素的DOM对象。 – 2013-05-13 11:39:30