据我所知,这个问题可能因为重复而被关闭(对不起,如果是),但在我的特定情况下,可能会出现一个不同的问题,因为功能不能按预期工作,那么它就是其他类似的问题。 / p>
假设我们有一个标记:
<div>
<label for="IsRecurring">Is Recurring</label>
</div>
<div>
<input id="IsRecurring" name="IsRecurring" type="checkbox" value="true">
<input name="IsRecurring" type="hidden" value="false" />
</div>
<div id="schedulerTypesList" style="display:none">
<div>
<label for="ScheduleTypeId">Schedule</label>
</div>
<div class="editor-field">
<input type="hidden" name="ScheduleTypeId" id="ScheduleTypeId" value="" />
<ul id="ScheduleTypeIdlist" >
<li>Once a weel</li>
</ul>
</div>
</div>
文件中附有一个JS.ready事件:
$(document).ready(function() {
$('#IsRecurring').click(function () {
var thisCheck = $(this);
if (thischeck.is(':checked'))
$('#schedulerTypesList').show();
}
else {
$('#schedulerTypesList').hide();
})
});
为什么复选框点击事件不会切换div的显示?
答案 0 :(得分:3)
一些问题!!
$(document).ready(function() {
$('#IsRecurring').click(function() {
var thisCheck = $(this);
if (thisCheck.is(':checked')) { // added this closing bracket
$('#schedulerTypesList').show();
}
else {
$('#schedulerTypesList').hide();
} // added this closing bracket
});
});
在if
和thischeck
而不是thisCheck
之后缺少括号,并添加了正确的右括号。工作演示:http://jsfiddle.net/manseuk/4DqXv/18/