Jquery:如何在点击时调用一个函数

时间:2015-10-08 06:34:17

标签: javascript jquery checkbox

我有一个名为的复选框,单击该复选框,我正在调用下面的函数。

 $('#checkbox-id').on('click', function(){
    alert("clicked");
 }).each(function(){this.checked = ace.settings.is('main-container', 'fixed')})

我想从不同的函数调用相同的方法。首先,我需要检查天气复选框是否已经检查,之后我需要调用函数一旦复选框检查这个我正在使用此代码。

$(document).ready(function(){
   if(document.getElementById('checkbox-id').checked){
       $('#checkbox-id').click() // getting called but also unchecking checkbox it should not uncheck
   }
});

这是有效的,但它也取消选中我不想要的复选框。

那么如何在不取消选中复选框的情况下调用该函数。

这里有JSFIDDLE来重现。

5 个答案:

答案 0 :(得分:0)

您可以选中是否选中复选框:

$(document.body).on('change', '#chkID', function () {
        if (this.checked) {
            // CHECK BOX IS CHECKED
        }
        else {
            // CHECK BOX IS NOT CHECKED
        }
    });

DEMO

答案 1 :(得分:0)

尝试声明您的函数而不是使用匿名函数:

function handle_click() {
    alert("clicked");
}

$('#checkbox-id').on('click', handle_click);

$(document).ready(function(){
   if(document.getElementById('checkbox-id').checked){
       handle_click();
   }
});

答案 2 :(得分:0)

您可以使用此功能,这将在选中复选框后触发警报

<script>
function changeImage() {
var image = document.getElementById('myImage');
if (image.src.match("file:///C:/Users/dell/Desktop/Capture.png")) {
    image.src = "file:///C:/Users/dell/Desktop/asd.png";
} else {
    image.src = "file:///C:/Users/dell/Desktop/Capture.png";
}
}
</script>

答案 3 :(得分:0)

请尝试trigger()

$('#checkbox-id').trigger('click');

答案 4 :(得分:0)

解决方法不正确的解决方案

 $(document).ready(function(){
   if(document.getElementById('checkbox-id').checked) {
        $('#checkbox-id').click() // getting called but also unchecking checkbox should not uncheck
        $('#checkbox-id').prop('checked', true);
   }
});