Javascript 如何在选中文本框时禁用文本框
我试图按照教科书,但结果不会禁用我的网站上的文本框时,我点击复选框Javascript 如何在选中文本框时禁用文本框,javascript,jquery,html,Javascript,Jquery,Html,我试图按照教科书,但结果不会禁用我的网站上的文本框时,我点击复选框 <form action="#"> Billing Address same as Shipping Address: <input type="checkbox" name="billingAdd" id="billingAdd"> <br><br> Street Address <input type="text" id="str
<form action="#">
Billing Address same as Shipping Address:
<input type="checkbox" name="billingAdd" id="billingAdd">
<br><br>
Street Address
<input type="text" id="street" name="street" class="baddr">
<br><br>
City:
<input type="text" id="city" name="city" class="baddr">
</form>
<script type="text/javascript">
$(document).ready(function() {
$("#billingAdd").click(function() {
if ($("#billingAdd").attr("checked") == "checked") {
$(".baddr").val("");
$(".baddr").attr("disabled","disabled");
} else if ($("#billingAdd").attr("checked") == undefined) {
$(".baddr").removeAttr("disabled");
}
});
});
</script>
账单地址与发货地址相同:
街道地址
城市:
$(文档).ready(函数(){
$(“#账单添加”)。单击(函数(){
如果($(“#billingAdd”).attr(“已检查”)=“已检查”){
$(“.baddr”).val(“”);
$(“.baddr”).attr(“禁用”、“禁用”);
}else if($(“#billingAdd”).attr(“选中”)==未定义){
$(“.baddr”).removeAttr(“禁用”);
}
});
});
您可以这样做(您应该使用prop()
,而不是attr()
/removeAttr()
):
非常感谢您的支持,它很有效:)。你能解释一下为什么我的代码不起作用吗?(我遵循教科书“php、mysql、javascript和html for dummies-book3 chap5”)@user3527561不用担心-这本书可能已经相当老了-注意你的代码在jQuery 1.6()中工作。现在,我们没有删除属性,而是简单地将elements属性设置为false/true等:)
$(document).ready(function() {
$("#billingAdd").click(function() {
if (this.checked) {
$(".baddr").val("");
}
$(".baddr").prop("disabled", this.checked);
});
});