我仍然是jQuery的新手,所以请原谅我,如果第一轮没有意义.
我有一组复选框(允许,不允许,可协商),如果您选中允许或可协商,它将通过onclick事件取消隐藏另一组复选框.
我遇到的问题是,当刷新页面时,如果选中允许或协商,我希望第二组复选框可见.我希望这可以在页面加载时完成,而不是通过任何点击或更改事件(如果可能).
我已经尝试了其他问题的各种建议,没有运气.例如:if ($("#id_pets_0").attr("checked")==true)
这可能吗?
如果有人对此有任何替代方案,我也会为此而战.
更新: 这是我一直在尝试的.
$(function() {
if ($("#id_pets_0").attr("checked")==true) {
$("#dogs").show();
$("#cats").show();
}
else {
$("#dogs").hide();
$("#cats").hide();
}
});
Run Code Online (Sandbox Code Playgroud)
更新: 此代码确实有效.所以我知道它至少会检查点击事件的复选框.
$(function() {
$('input#id_pets_0').click(function() {
if ($(this).attr("checked")) {
$("#id_pets_1").attr("checked", false);
$("#dogs").show("slow");
$("#cats").show("slow");
return;
}
if ($("#id_pets_2").attr("checked")) {
$("#dogs").show("slow");
$("#cats").show("slow");
}
else {
$("#id_dogs_0").attr("checked", false);
$("#id_dogs_2").attr("checked", false);
$("#id_cats_0").attr("checked", false);
$("#id_cats_2").attr("checked", false);
$("#dogs").hide("slow");
$("#cats").hide("slow");
}
});
});
Run Code Online (Sandbox Code Playgroud)
除非您在HTML之后放置所有脚本ready(),document否则您需要连接到事件.
此外,您需要使用:checked选择器来确定是否选中了复选框.
这应该工作:
$(document).ready(function () {
if ($('#id_pets_0 :checked')) {
alert('Hello');
}
});
Run Code Online (Sandbox Code Playgroud)
阅读有关:checked选择器的更多信息:http://api.jquery.com/checked-selector/