我有3个T / F问题在我的网页上显示为复选框。第三个问题是隐藏的,直到用户检查前两个复选框。如果用户也检查第三个复选框,则会显示一个新的问题部分。这是成功完成此操作的jquery。
$(document).ready(function () {
$("#id_q1, #id_q2").click(function () {
if ($("#id_q1").is(':checked') == true && $("#id_q2").is(':checked') == true) {
$(".question-hide").show();
$("#id_q3").click(function () {
if ($("#id_q3").is(':checked') == true ) {
$("#questions-hide").show();
} else {
$("#questions-hide").hide();
}
});
} else {
$(".question-hide").hide();
$("#questions-hide").hide();
$('#id_q3').attr('checked', false);
}
此页面包含一个提交按钮,如果表单有效,则会创建一个对象(我在django中这样做)。如果未填写表单的必需元素,它将显示错误消息。如果它们最初显示,我希望隐藏的部分继续显示。现在,即使在重新加载页面时检查了三个框,隐藏的部分仍然是隐藏的。
如何获得此功能?
由于
答案 0 :(得分:0)
改为使用change
事件,并在页面加载时触发处理程序:
$("#id_q1, #id_q2").change(function () {
//...
}).trigger('change');