我有这个简单的jQuery代码来测试。
<html>
<head>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$("button").click(function(){
$("text").attr("disabled","");
});
});
</script>
</head>
<body>
<input type="text">
<br />
<button>Set the textfield disabled</button>
</body>
</html>
基本上,HTML页面带有一个简单的按钮和文本字段。所有我想有输入字段禁用,因为我点击按钮.但它不工作???
(PS:这段代码来源于w3schools.com网站,只是为了简单地测试一下jQuery有多强大)
6条答案
按热度按时间bxgwgixi1#
从jQuery 1.7开始,你可以使用
.prop
:在1.7之前,您可以执行以下操作:
PS:使用
$(":text")
或$('input[type="text"]')
选择所有类型文本的元素。f3temu5u2#
试试这个:
qjp7pelc3#
或者(更现代):
o2g1uqev4#
jquery
中没有text
选择器。您需要使用属性选择器[attribute=value]
或:
有一个
:text
选择器,但它的效率低于第一个选项,请参阅docs:$(':text')等效于$('[type=text'),因此选择所有元素。与其他伪类选择器(那些开始以“:“开头的选择器)一样,建议在它前面加上标记名或其他选择器;否则,隐含通用选择器(“”)。换句话说,空的$(':text')等价于$(':text'),所以应该使用$('input:text')。
附加说明:因为**:text是一个jQuery扩展,而不是CSS规范的一部分,所以使用:text的查询不能利用原生DOM querySelectorAll()方法提供的性能提升。为了在现代浏览器中获得更好的性能,请使用[type=“text”]。
请注意,您的XHTML无效。您应该关闭
<input type="text">
=><input type="text" />
ufj5ltwl5#
$(“input”).attr(“禁用”,“禁用”);
nmpmafwu6#
“disabled”是一个属性,而不是属性本身。像“checked”或“disabled”这样的布尔值在以这种方式访问它们时并不总是正确地更新(或检索)。使用
而不是.