如何验证在提交之前是否在jQuery中选中了复选框

时间:2012-03-06 16:44:37

标签: jquery checkbox

<select name="status" id='status'>
    <option value="Submitted">Submitted</option>
    <option value="Canceled">Canceled</option>

</select>
<input type="checkbox" id="app_box" name="application_complete" value="checked"> App Complete

<script type="text/javascript">
$(function() {

    $('form.editable').submit(function(){ 
        if ($('#status').val()=='Canceled') { 
            if (!confirm('This  information will be discarded! )) { 
                return false; 
            } 
        } 
    }); 

}); 
</script>

所以,我有上面的脚本工作正常。我还要再添一个确认。当代理点击提交按钮时,我想检查是否选中了应用程序复选框。如果未选中,则显示另一个确认框,说明您必须选中该复选框。如何在jquery中完成。

4 个答案:

答案 0 :(得分:10)

像这样:

if ($('#app_box').is(':checked')){...}

或者

if ($('#app_box')[0].checked){...}

以下是您的代码应该如何:

$('form.editable').submit(function(){ 
    if (! $('#app_box')[0].checked){
       alert('Check App Complete first !');
       return false;
    }

    if ($('#status').val() == 'Canceled') { 
        if (!confirm('This  information will be discarded!' )) { 
            return false; 
        } 
    } 
}); 

了解详情:

答案 1 :(得分:1)

:checked

(文档是你最好的朋友......)

答案 2 :(得分:0)

$("input[name='application_complete']").is(":checked"))

答案 3 :(得分:0)

你可以尝试这样的事情:

<script type="text/javascript">
$(function() {

    $('form.editable').submit(function(){ 
        if ($('#status').val()=='Canceled') { 

            //check if the box is checked!
            if ($("#app_box").is(':checked')) {
               alert("You have to check the box 'App Complete'"); 
               return false;
            }

            if (!confirm('This  information will be discarded! )) { 
                return false;
            } 
        } 
    }); 

}); 
</script>

我希望它有所帮助!