不存在的属性HTML输入字段
Non existing Attributes HTML Input Field
将一个不存在的属性附加到html元素以便在jquery中使用它是一种好的做法吗。例如
<input type="text" valrule="someregexstring" />
然后简单地使用jquery来选择所有包含valrule属性的元素,并解析regex字符串。
就编程标准和最佳实践而言,这是"不可行的"吗?
您应该使用前缀data-<myAttribute>
。它由HTML5支持,其他浏览器会忽略它,您可以使用.data()
方法通过jQuery轻松访问它。
<input id="myInput" type="text" data-MySuperMassiveAttribute="Awesome"/>
你可以这样检索信息:
var howAmI = $('#myInput').data('MySuperMassiveAttribute');
alert(howAmI); // now everybody knows how awesome you are ;-)
使用HTML5数据前缀作为新属性,如下所示:
<input type="text" data-valrule="someregexstring" />
它的有效HTML 5..
http://ejohn.org/blog/html-5-data-attributes/
你绝对可以。尽管HTML5引入了所谓的数据-属性,允许以标准方式为元素设置非标准属性。
您只需在属性名称前面加上data-
<input type="text" data-valrule="someregexstring" />
尽管这是在HTML5中引入的,但您仍然可以将其与HTML4的文档一起使用。
使用jQuery(1.4.3+),可以使用.data()或通过.attr()访问data-属性。
我个人不会这么做。有些浏览器在解析HTML时会忽略"不存在"的属性,因此这些属性不会保存在浏览器页面DOM中。当执行jQuery选择器时,它们可能找不到此属性。
如果你保证在HTML5兼容的浏览器中运行,那么你可以为你的属性使用HTML5 data-
前缀,例如
<input type="text" data-valrule="someregexstring" />
然而,如果您在较旧的浏览器中运行,这可能仍然不起作用。例如,事实证明,我们几乎一半的客户都在使用IE7,但没有升级计划(以政府的速度发展)。
相关文章:
- 将输入字段中的文本提交到我的数据库,同时将其添加到我的列表中
- 而循环只设置php中输入字段中的第一个值
- 在输入字段中将最小金额设置为
- 如何在输入字段中的按钮的帮助下打开日历,该字段的类型为“=”;日期”;
- 如何在HTML输入字段中添加不可删除的后缀
- 互斥单选按钮和相应的输入字段
- 在IE9中的输入字段中输入焦点最近按钮
- 选中单选框时将属性添加到输入字段
- 当设置addFromAutocompleteOnly时,剩余文本将保留在输入字段中
- 我如何在数字插入中使用逗号,这样它就不会'不要破坏我的输入字段
- 在输入字段上有两个函数调用,一个在Blur上,一个不在Angular中
- 输入字段将't获取更新的值
- 如何选择多个输入字段并删除所需的属性
- 输入字段,只接受0到12之间的数字
- 单击鼠标,用MySQL数据填充html表单输入字段
- 使用jquery将输入字段转换为文本
- Model中的Typeahead返回空值以形成输入字段
- 如何从查询字符串中的输入字段发回文本
- 如何验证日期、月份和日期的3个独立输入字段;年使用jquery或javascript
- 将值传递给jquery创建的输入字段