我敢肯定我會失去一些重要點,因爲這是一個基本的問題,但我無法弄清楚我在做什麼錯誤的jQuery選擇器使用「#」來按ID選擇。jQuery基本幫助
給出我的文檔中的該元素:
<%= Html.CheckBox("IsAlwaysValid", true,
new { onchange = "showHideValidSetList()", id = "IsAlwaysValidCheckBox" })%>
(其輸出以下標記:
<input checked="checked" id="IsAlwaysValidCheckBox" name="IsAlwaysValid" onchange="showHideValidSetList()" type="checkbox" value="true" /><input name="IsAlwaysValid" type="hidden" value="false" />
):
<script type="text/javascript">
function showHideValidSetList() {
if ($("#IsAlwaysValidCheckBox").checked) {
alert("IsAlwaysValidCheckBox is checked");
return;
}
else {
alert("IsAlwaysValidCheckBox is NOT checked");
return;
}
}
</script>
然後使用jQuery選擇此功能
應該完全等效於使用javascript DOM的這一個:
<script type="text/javascript">
function showHideValidSetList() {
if (document.getElementById("IsAlwaysValidCheckBox").checked) {
alert("IsAlwaysValidCheckBox is checked");
return;
}
else {
alert("IsAlwaysValidCheckBox is NOT checked");
return;
}
}
</script>
對不對?但是JavaScript版本按預期工作,而jQuery版本總是使用「else」分支,表明它並沒有真正查看複選框的狀態。
我在做什麼錯?
感謝您與我的關係。
fyi,我們不會降低「愚蠢」的問題;沒有了。我們可能會downvote重複雖然;-) – geowa4