Javascript 使用spring表单时,如何在ajax/jquery中获取复选框值

Javascript 使用spring表单时,如何在ajax/jquery中获取复选框值,javascript,jquery,ajax,spring,checkbox,Javascript,Jquery,Ajax,Spring,Checkbox,我有一组复选框,按路径deliveryStatus定义,如下所示 <form:checkbox path="deliveryStatus" value="notDelivered"/> <form:checkbox path="deliveryStatus" value="delivered"/> 返回false和 $('#deliveryStatus').val(); 给我未定义的 在jquery/ajax中,获取我的表单(deliveryStatus)的选中/选中

我有一组复选框,按路径deliveryStatus定义,如下所示

<form:checkbox path="deliveryStatus" value="notDelivered"/>
<form:checkbox path="deliveryStatus" value="delivered"/>
返回false和

$('#deliveryStatus').val();
给我未定义的

在jquery/ajax中,获取我的表单(deliveryStatus)的选中/选中复选框的正确方法是什么

在我意识到ID为deliveryStatus1和deliveryStatus2后,我注意到下面的代码起作用

var deliverystatus =  $('#deliveryStatus1').val();
alert( 'deliverystatus' );
deliverystatus = $('#deliveryStatus1').is(":checked");
alert( deliverystatus );
deliverystatus = $('#deliveryStatus2').is(":checked");
alert( deliverystatus );
但不要认为这是获得选中选项的正确方法。 原因是有多个复选框

阅读示例#1我认为应该有更好的方法来读取具有相同路径值的多个复选框


问题的最新情况

显式添加ID,如下所示

<form:checkbox path="deliveryStatus" id="deliveryStatus" value="notDelivered"/>
<form:checkbox path="deliveryStatus" id="deliveryStatus" value="delivered"/>

仅当有一个选择时,此选项才有效。因此,当存在多个选择时可能不太正确

当您有多个具有相同路径变量的复选框时,它们将以相同的名称呈现,如下所示

<form:checkbox path="deliveryStatus" value="notDelivered"/>
<form:checkbox path="deliveryStatus" value="delivered"/>
如果您只想获得所有选中项的值,无论它们是否选中,请使用以下选项

$("input[name='deliveryStatus']:checked").each(function (){
    alert($(this).val());
});
$("input[name='deliveryStatus']").each(function (){
    alert($(this).val());
});

希望这能有所帮助。

感谢您的澄清。这很有趣。在上一篇文章中,我也遵循了你们的解释。谢谢你帮助一个新手
<input id="deliveryStatus1" name="deliveryStatus" type="checkbox" value="notDelivered"/>
<input id="deliveryStatus2" name="deliveryStatus" type="checkbox" value="delivered"/>
$("input[name='deliveryStatus']:checked").each(function (){
    alert($(this).val());
});
$("input[name='deliveryStatus']").each(function (){
    alert($(this).val());
});