如何修改jquery使用var而不是'12'?如何在JQuery中使用變量
var disableId = 12;
if (e.currentTarget.checked) {
$("input:checkbox[value=12]").attr("disabled", true);
}
else {
$("input:checkbox[value=12]").attr("disabled", false);
}
如何修改jquery使用var而不是'12'?如何在JQuery中使用變量
var disableId = 12;
if (e.currentTarget.checked) {
$("input:checkbox[value=12]").attr("disabled", true);
}
else {
$("input:checkbox[value=12]").attr("disabled", false);
}
您應該使用jQuery's prop()
method代替attr()
布爾值;也沒有必要在所有的IF語句,你可以只設置disabled
狀態等於e.currentTarget.checked
(這是可以true
或false
):
var disableId = 12,
state = e.currentTarget.checked;
$("input:checkbox[value='" + disableId + "']").prop("disabled", state);
謝謝James,這是一個很好的答案。 –
打開字符串,並將其添加
$("input:checkbox[value='"+disableId +"']").prop("disabled", true);
也應該使用道具(),而不是爲ATTR值boleean
$(「輸入:複選框[值='」 + disableId + 「'])。attr(」disabled「,true); –
如果你直接去Anton的upvoted答案,我會在這裏指出[我在回答中說過的話](http://stackoverflow.com/a/21482280/1317805):您使用的'if'語句是不必要的,因爲您可以簡單地在'e.currentTarget.checked'中代替'true'或'false',您還應該使用'prop )'而不是'attr()'。 –