2011-01-23 77 views
0

当您标记/取消标记复选框时,我希望它为window.location = index.php?标记= 1,如果它被标记,并且如果您单击并且它没有标记,它应该是mark = 0jQuery:更改标记复选框

+0

可以指定你的问题好一点?你尝试过一些东西,但它不起作用? – nrobey 2011-01-23 18:26:46

回答

2
$('input:checkbox').click(function(){ 
    window.location='/index.php?mark=' + ($(this).attr('checked') ? 1 : 0); 
}); 

应该这样做,但请注意,这意味着它会在检查之间导致页面重新加载。

EDIT或者William提到,你也可以绑定到.change()

EDITv2工作例如:http://www.jsfiddle.net/T5CaC/

+0

只要用户单击更改复选框的唯一方法,这就是正确的。如果您计划以编程方式更改复选框,并且仍想执行该事件,则更改click()以更改()。 – William 2011-01-23 18:30:10

0
$('#someCheckbox').change(function() { 
    window.location.search = ("?mark=" + (+this.checked)); 
}); 
0

事情是这样的:

$('input#mycheckbox').change(function() { 
    if ($(this).attr("checked")) { 
     window.location = index.php?mark=1; 
     return; 
    } 
    window.location = index.php?mark=0; 
}); 

Check Here