如果用户取消选中该复选框,我想禁用链接。
尝试了类似的事情:$('#check1').click(function() {
if(!$(this).is(':checked')){
$('#tet1').bind('click', function(){ return false; });
}else{
$('#tet1').unbind('click');
}
});
但它不起作用。 http://jsfiddle.net/LX7wH/
为什么这不适合我?哪里我错了? 谢谢!
答案 0 :(得分:9)
当复选框被更改时,您不需要执行任何操作,只需检查是否在锚点的事件处理程序中检查了它,如果选中它,则阻止默认操作。
$('#tet1').on('click', function(e) {
if ( $('#check1').is(':checked') ) e.preventDefault();
});
答案 1 :(得分:2)
尝试,
var xEnabled = true;
$('#check1').click(function() {
xEnabled = $(this).is(':checked');
});
$('#tet1').click(function(){
if(!xEnabled) { return false; }
})
答案 2 :(得分:1)
我相信这就是你所追求的:
<a href="http://www.google.com">Google</a>
<input type="checkbox" id="checkBox" />
$("a").click(function(e) {
if($("#checkBox").prop("checked") === true) {
e.preventDefault();
return false;
} else {
return true;
};
});
这将停止所有链接工作,但您可以将“a”选择器更改为您想要的任何内容。