我试图开始工作的脚本旨在在用户位于页面的某个部分时隐藏按钮。问题是.hide()没有被触发,我认为它与if语句有关,只是不太确定。
$(function () {
var sndReminderBtn = $('.sendreminderBtn');
var resultSelection = $('.resultsSelector');
if (resultSelection.is(':checked')) {
sndReminderBtn.hide();
alert("Button is hidden");
} else {
sndReminderBtn.show();
alert("button is NOT hidden");
}
});
答案 0 :(得分:0)
您必须更改验证请求选择是否已选中的方式
变化:
if(resultSelection.is(':checked')){
人:
if(resultSelection.attr('checked')){
或者如果您使用的是jquery 1.6 +
if(resultSelection.prop('checked')){
答案 1 :(得分:0)
在加载页面时绑定侦听器然后触发您的函数
$(function () {
$('.sendreminderBtn').click(showHide);
});
function showHide(){
var sndReminderBtn = $('.sendreminderBtn');
var resultSelection = $('.resultsSelector');
if (resultSelection.is(':checked')) {
sndReminderBtn.hide();
alert("Button is hidden");
} else {
sndReminderBtn.show();
alert("button is NOT hidden");
}
}
答案 2 :(得分:0)
如果您没有将处理程序附加到事件,它将无法工作。此外,代码可以更短:
$(function () {
$('.resultsSelector').on('change', function () {
$('.sendreminderBtn').toggle($(this).is(":not(:checked)"));
});
});