$input.disabled = true;
or
$input.disabled = "disabled";
哪一种是标准方式?相反,如何启用禁用的输入?
$input.disabled = true;
or
$input.disabled = "disabled";
哪一种是标准方式?相反,如何启用禁用的输入?
当前回答
禁用输入字段的另一种方法是使用jQuery和css,如下所示:
jQuery("#inputFieldId").css({"pointer-events":"none"})
并且为了实现相同的输入,代码如下:
jQuery("#inputFieldId").css({"pointer-events":""})
其他回答
2018,无JQuery(ES6)
禁用所有输入:
[...document.querySelectorAll('input')].map(e => e.disabled = true);
禁用id=“my input”的输入
document.getElementById('my-input').disabled = true;
问题是JQuery,它只是仅供参考。
在jQuery Mobile中:
用于禁用
$('#someselectElement').selectmenu().selectmenu('disable').selectmenu('refresh', true);
$('#someTextElement').textinput().textinput('disable');
用于启用
$('#someselectElement').selectmenu().selectmenu('enable').selectmenu('refresh', true);
$('#someTextElement').textinput('enable');
<html>
<body>
Name: <input type="text" id="myText">
<button onclick="disable()">Disable Text field</button>
<button onclick="enable()">Enable Text field</button>
<script>
function disable() {
document.getElementById("myText").disabled = true;
}
function enable() {
document.getElementById("myText").disabled = false;
}
</script>
</body>
</html>
2018年更新:
现在不需要jQuery了,因为document.querySelector或document.querySelectedAll(对于多个元素)做的工作与$几乎完全相同,加上更明确的getElementById、getElementsByClassName、getElementByTagName
禁用“输入复选框”类的一个字段
document.querySelector('.input-checkbox').disabled = true;
或多个元素
document.querySelectorAll('.input-checkbox').forEach(el => el.disabled = true);
对输入类型禁用true:
如果是特定的输入类型(例如文本类型输入)
$("input[type=text]").attr('disabled', true);
对于所有类型的输入类型
$("input").attr('disabled', true);