如何在取消选中复选框时调用jQuery函数

时间:2013-06-08 08:02:08

标签: jquery events

HTML 有一个HTML复选框。我无法编辑此代码中的任何内容。默认情况下,它通过外部脚本进行检查。

<input type="checkbox" name="shipping[same_as_billing]" id="shipping:same_as_billing" value="1" onclick="shipping.setSameAsBilling(this.checked);">

的jQuery

当用户取消选中上面的复选框时,我编写了自定义jQuery来显示一些表单元素。

<script>
    function showForm(){
        code to show a form goes here
     }
</script>

我需要什么:

如果用户取消选中上面的复选框,如何调用 showForm()函数? 当用户检查回来时,不应该调用它。

3 个答案:

答案 0 :(得分:5)

你必须在你的id中逃脱冒号并使用&#34; is&#34; jQuery检查你的复选框是否被选中的方法。

$('#shipping\\:same_as_billing').change(function() {
    if(!$(this).is(':checked'))
        alert('worked');
});

jsFiddle

答案 1 :(得分:3)

您可以使用jQuery change()功能以及:checked selector

试试这个:

$("#shipping\\:same_as_billing").change(function() {
  if ($(this).is(":checked")) {
    showForm();
  }
});

答案 2 :(得分:1)

$('document').on('change', '#shipping:same_as_billing', function () {
            if ($(this).is(':checked')) {
//CALL YOUR FUNCTION OR WHATEVER YOU WANT TO DO 
}})