以下用于添加和删除属性的代码readonly(从此处获取):
$('#someid').prop('readonly', true);
$('#someid').removeProp('readonly');
Run Code Online (Sandbox Code Playgroud)
但是W3C标准建议使用readonly属性而没有值(从这里得到):
我们应该使用: <input type="text" readonly />
代替: <input type="text" readonly="true or readonly or anything" />
因为$('#someid').prop('readonly');不起作用.正确的代码是什么?
ade*_*neo 16
正确的方法是:
$('#someid').prop('readonly', true);
Run Code Online (Sandbox Code Playgroud)
要么
$('#someid').prop('readonly', false);
Run Code Online (Sandbox Code Playgroud)
和
$('#someid').removeProp('readonly');
Run Code Online (Sandbox Code Playgroud)
工作正常以及这些都是本机的jQuery方法:
document.getElementById('someid').readOnly = true;
Run Code Online (Sandbox Code Playgroud)
它会readonly适当地设置属性,如果你检查控制台中的元素,你会看到readonly添加的属性没有像它应该符合W3C规范的值.
readonly 是属性,prop()是设置属性的方法.
HTML5的规范说:
readonly ="readonly"或""(空字符串)或空
指定该元素表示不打算编辑其值的控件.
这意味着以下内容有效:
<input type="text" readonly />
<input type="text" readonly="" />
<input type="text" readonly="readonly" />
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
42055 次 |
| 最近记录: |