输入名称不应该使用?

时间:2013-04-30 20:09:02

标签: javascript jquery html

早些时候,我正在创建一个表单并且无意识地将其命名为“name”之一,类似于以下伪代码:

<input id="name" type="text" name="name" />

然后我记得在过去,我遇到了名为“action”的输入问题。如果我没记错的话,在使用JavaScript进行增强时会出现问题(表单的操作与名称为“action”的输入之间存在混淆)。

所以我的问题是:

  • 使用与上述代码段相似的内容是否安全?
  • 是否存在一些通常不应用作输入名称的规范字符串列表?

1 个答案:

答案 0 :(得分:3)

如果您使用myform.action之类的快捷方式,则会出现大多数问题,因为actionform元素的属性(例如idparentNode,以及使用console.dir(myform))可以看到的其他一些属性。

您应始终使用快速可靠的方式:

var inputElement = document.getElementById('action');

或者,使用jQuery:

var $input = $('#action');

正如epascarello所注意到的那样,如果通过定义具有该名称的元素来调用或使用您覆盖的属性,也会遇到问题,例如submit。但是,当'是在你的代码中调用它的人时,它应该是显而易见的。

相关问题