wil*_*ill 6 forms validation jquery html5 internet-explorer
我有这样的代码:
<input required>
Run Code Online (Sandbox Code Playgroud)
在良好的浏览器中,我可以像这样使用jquery为输入添加一类错误:
$('input[required]').addClass('error');
Run Code Online (Sandbox Code Playgroud)
但它在IE中不起作用.否则,我会诉诸于此,但它不是那么整洁......
HTML:
<input data-required=true>
Run Code Online (Sandbox Code Playgroud)
使用Javascript:
if( $('input').data('required') ) $('input').addClass('error');
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
谢谢,
威尔
编辑:
是的,我正在使用HTML5.
IE实际上解释了这个:
<input required>
Run Code Online (Sandbox Code Playgroud)
如:
<input required="">
Run Code Online (Sandbox Code Playgroud)
所以有可能检查这样:
if( $('input').prop() == undefined )
Run Code Online (Sandbox Code Playgroud)
但同样,这是一种混乱的做事方式,特别是考虑到只有IE才有问题.此代码适用于所有其他浏览器.
我基本上问是否有一种检查方法是跨浏览器和整洁.我也许是一个完美主义者!;)
usingdata-
属性是安全的,如果您使用它们,您的页面将有效。但你需要报价来证明你的价值。我一直在使用数据属性。我们支持IE7。
<input data-required="true">
Run Code Online (Sandbox Code Playgroud)
或者甚至您可以在这样的情况下保留该值:
<input data-required>
Run Code Online (Sandbox Code Playgroud)
如果您经常使用数据属性,那么最好知道您可以使用dataset
Chrome 开发人员工具(和 Firebug)中的属性通过控制台访问元素的数据属性。dataset
在代码中使用 API 尚不安全。IE8 不支持
在你的控制台中写:
$$('input')[0].dataset
Run Code Online (Sandbox Code Playgroud)
并获取数据属性值和属性!
归档时间: |
|
查看次数: |
17580 次 |
最近记录: |