HTML,JavaScript或jQuery中是否有办法将输入元素设为“readonly”,即
哪个适用于所有浏览器?我知道有一个“只读”属性,但并不是所有浏览器都支持它。
我不是在询问安全方面,只是询问用户体验。
答案 0 :(得分:6)
如果你使用jQuery(当你放入标签时)它跨浏览器:
$(...your input ...).attr('readonly','readonly');
编辑:来自http://www.w3schools.com/tags/att_input_readonly.asp
支持readonly属性 所有主流浏览器。
答案 1 :(得分:2)
一种方法是伪造它:
<p class="fake_input">The readonly Value</p>
<input type="hidden" name="real_input" value="The readonly Value" />
如果您希望看起来就像一个禁用的输入框,您可以设置它的样式。
请记住,人们可以随时改变隐藏的输入。
答案 2 :(得分:1)
尽管readOnly属性在html中不区分大小写,但它必须在js中写成'readOnly'。它适用于在IE6的所有浏览器中直接分配,但您分配它的方式可以是浏览器特定的。
element.setAttribute('readOnly','readOnly')在旧版浏览器中不起作用, 但是element.readOnly ='readOnly'(或任何truthy值')适用于x-browser。