繁体   English   中英

在多选表单上,如果未选择任何选项,则在提交时选择所有选项

[英]On a multi-select form, on submit select all options if none were selected

使用jQuery / Javascript,当用户单击“提交”时,我需要验证是否已在选择表单上至少选择了一个选项,而未选择一个选项,则需要全部提交。

所以在这样的形式上:

<form action="http://example.com" method="get" id="carfare" name="mycarform">
<select name="car" id="carchoice" multiple>
  <option value="volvo">Volvo</option>
  <option value="saab">Saab</option>
  <option value="opel">Opel</option>
  <option value="audi">Audi</option>
</select>
<input id="carsubmit" type="submit">
</form>

如果用户单击提交按钮而未选择任何选项,则需要返回它: http : //example.com/?car=volvo&car=saab&car=opel&car=audi

首先,检查是否有任何选择通过执行

if(!$('#carchoice').val())

然后,将它们全部设置为

$('#carchoice option').prop("selected", true);

 $('form').submit(function(){ if(!$('#carchoice').val()){ $('#carchoice option').prop("selected", true); } }); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script> <form action="http://example.com" method="get" id="carfare" name="mycarform"> <select name="car" id="carchoice" multiple> <option value="volvo">Volvo</option> <option value="saab">Saab</option> <option value="opel">Opel</option> <option value="audi">Audi</option> </select> <input id="carsubmit" type="submit"> </form> 

提交时,检查是否选择了选项,如果未选中,则选择全部。

$(document).ready( function () {
    $('#carefare').submit( function () {
        var choice = $('#carchoice').val();
        if(!choice) {
            $('#carchoice option').attr('selected','selected');
        }
    });
});

请参阅jsfiddle检查网络标签以获取提交的值

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM