一. 背景
通常, 我们在使用表单时, 会给表单元素设置一个name属性, 这是再正常不过的操作, 但是, 现在我建议你, 最好不要将某个表单元素的name属性值设置为tags.
二. 为什么?
因为IE6+, Opera, Webkit中, 对于表单元素的elements对象, 有个名为tags的原生方法, 其作用是通过表单元素的标签名来获取表单元素, 如
var o =oForm.elements.tags('input')[0].
虽然几大浏览器都支持tags方法, 但对于一个特殊情况, 出现了两种结果: 当某个表单元素的name属性值为tags, oForm.elements.tags是表示的什么呢?
我们来看两个例子:
例一: 表单中不存在name属性值为tags的表单元素
<form name="testForm1" action="" method="post">
<input type="text" />
</form>
<script type="text/javascript">
var oForm = document.getElementById('testForm');
alert(oForm.elements['tags']);
</script>
FF: 输出undefined
IE, Opera, Webkit: function tags() {native code}
例二: 表单中存在name属性值为tags的表单元素
<form name="testForm1" action="" method="post">
<input type="text" name="tags" />
</form>
<script type="text/javascript">
var oForm = document.getElementById('testForm');
alert(oForm.elements['tags']);
</script>
IE, FF, Opera: 输出元素引用
Webkit: function tags() {native code}
三. 解决方法
1. 避免将name属性值设置为tags;
2. 不使用oForm.elements方式来获取表单元素;
3. 使用oForm.elements.namedItem('tags')方式来获取(推荐), 该方式各浏览器均支持, 且不会出现
oForm.elements['tags']这样的问题.
四. 参考资源
相关推荐
由于`$("#formAttribute1")`选择的是一个表单元素,而不是表单中的输入元素,因此获取不到内部元素的name属性值。 接下来,文章中提到了使用`prop`方法,这个方法在获取属性值时与`attr`方法在行为上可能有所不同,...
在这个例子中,表单被定义为一个具有id为"frm1"的元素,它的action属性被设置为"jb51.php",这意味着当表单提交时,数据将被发送到jb51.php这个URL。在用户填写表单后点击提交按钮,浏览器会根据action属性指定的...
然而,如果在表单内部存在一个名为`action`的输入元素(例如`<input>`或`<button>`),这可能会引发一些意外的行为,正如标题“表单中有name为action的元素时,取form的属性action杯具了”所描述的问题。 当我们...
当用户点击“表单属性”按钮时,触发`getFormPro()`函数,该函数通过`window.open()`打开一个新的窗口,并输出表单的属性值,实现了对表单属性的动态展示。 #### 六、总结 表单及其元素是Web应用中不可或缺的部分...
这允许开发者能够通过简单的属性设置,将页面上的元素迅速转变为可编辑状态,用于实现富文本编辑器等应用。 #### 1.3 hidden属性 `hidden`属性在HTML5中用于隐藏页面元素。它是一个布尔属性,当元素上设置了`hidden...
本文实例讲述了JavaScript获取表单内所有元素值的方法。分享给大家供大家参考。具体如下: 下面的JS代码可以遍历指定表单中的所有元素,并输出元素的值 <!DOCTYPE html> <html> <body> <form id=...
本文主要围绕如何在Dreamweaver CS6中设置表单元素的属性,特别是复选框、选择(列表/菜单)对象以及跳转菜单,这些元素在构建网页交互功能时起着至关重要的作用。 1. **复选框** 复选框是表单中常见的元素,常...
在JavaScript中,我们通常通过`document.getElementById('elementId')`获取元素,然后使用`value`属性获取或设置其值。验证时,可以检查输入是否为空、是否符合特定格式(如邮箱格式)等。 2. **单选按钮** (input ...
单选按钮组的属性设置与单选按钮基本一致,主要包括名称、值和布局方式。 总的来说,Dreamweaver CS6提供了一套完善的工具来设置表单元素的属性,从而使得网页表单更加灵活、功能强大,能够满足各种用户交互需求。...
为了进一步提高兼容性和灵活性,建议为具有相同`name`属性的元素设置唯一的`id`属性,这样即使是在动态生成表单的情况下,也能够确保每个元素都能正确地进行验证。 ### 结论 通过对jQuery Validate插件的`$....
2. 添加属性和事件:创建元素后,可以使用`element.setAttribute('name', 'dynamicInput')`来设置其他属性,如name。同时,还可以为元素添加事件监听器,比如`element.addEventListener('keyup', function() {...})`...
例如,如果有一个input元素的id属性为cifNo,则可以使用$("#cifNo").val()来获取这个input元素的值。这个方法返回的是input元素当前的值,如果是文本类型input,那么返回的就是文本框内用户输入的文本。值得注意的是...
按回车键时跳到下一个表单元素的javascript代码 <br>函数说明:按回车键时跳到下一个表单元素 JumpToNextElement() 用于按回车键时跳到下一个表单元素(统一处理按回车键的问题) 在页面调用: <script ...
1. 表单元素:HTML中的标签定义了一个表单,其中可以包含各种表单控件,如(输入框)、(下拉框)、(多行文本框)等。 2. 表单属性:如action(提交表单的URL)、method(提交方式,GET或POST)等,控制表单的行为...
单选按钮允许用户在一组选项中选择一个值,它通常使用`<input type="radio">`标签来创建,并且具有相同`name`属性的多个单选按钮共同构成一个选择组,这样可以保证用户只能选择其中一个选项。 在JSP页面中创建单选...
泛微OA开发技巧作业流程表单HTML扩展开发...本文档详细介绍了泛微OA开发技巧作业流程表单HTML扩展开发推荐设计器实现设置表单元素的长度的概念、优点、实现方法、应用场景和常见问题,为开发者提供了一个详细的指南。
HTML5中form表单的新增属性.ppt
重定向会创建一个新的请求,而转发是在当前请求上下文中进行。 七、表单处理的错误处理 在实际应用中,错误处理是必不可少的。当用户输入不符合预期时,应提供清晰的错误提示。这可以通过设置请求属性并在JSP页面上...
2. `document.getElementsByName(name)`: 通过元素的name属性获取,返回的是一个NodeList集合,如`var inputs = document.getElementsByName('inputName')`。 3. `document.getElementsByTagName(tagName)`: 通过...
这包括创建`<form>`标签,添加输入字段(如`<input>`、`<textarea>`),以及设置表单的属性(如`name`、`id`)。通过JavaScript的`document.createElement()`、`appendChild()`和`innerHTML`等方法,可以实现这些...