Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/kubernetes/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Jquery检查多个选择是否具有值集_Php_Jquery_Forms_Select - Fatal编程技术网

Php Jquery检查多个选择是否具有值集

Php Jquery检查多个选择是否具有值集,php,jquery,forms,select,Php,Jquery,Forms,Select,我有一个带有多个选择字段的表单,允许您在每次选择时选择多个条目 每个选择项都被命名为id1[]、id2[]、id3[]等 使用Jquery在尝试提交表单时,我是否可以检查任何选择是否没有选择任何内容 我试过了,但表单仍然提交 $("#submit").click(function() { $("select[name^='id']:visible").each(function(index, element) { if ($(this).val() ==

我有一个带有多个选择字段的表单,允许您在每次选择时选择多个条目

每个选择项都被命名为id1[]、id2[]、id3[]等

使用Jquery在尝试提交表单时,我是否可以检查任何选择是否没有选择任何内容

我试过了,但表单仍然提交

$("#submit").click(function() {
        $("select[name^='id']:visible").each(function(index, element) {
            if ($(this).val() == "") return false; 
        });
});
我不需要知道哪个特定的'id'select没有选择选项,但如果我选择了,那就太好了


谢谢

将代码附加到表单提交处理程序,而不是提交按钮的单击处理程序,这样您就可以防止表单被提交

$("form").submit(function() {
    var rtn = true;
    $("select[name^='id']:visible").each(function(index, element) {
        if ($(this).val() == "") {
            console.log(this.id); // id
            rtn = false;
            return false;
        }
    });
    return rtn;
});
您可以使用该函数返回所有未选择值的选择

var selectsWithNoValue = $("select[name^='id']:visible").filter(function() {
     return !this.value.length;
});
然后,您可以检查长度,看看是否有不带值的元素,并且您还可以访问这些元素

if(selectsWithNoValue.length) { // if there are selects with no value
    //do something
}
另外,由于您使用的是绑定到表单的提交处理程序的表单,因此不需要单击按钮

因此,如果您想阻止表单提交,您可以这样做

return !selectsWithNoValue.length
如果有任何选择没有值,则返回false


返回$select[name^='id']:visible>option[value=]:selected.length谢谢您的帮助。出于某种原因,它仍然在提交。我的表单名称和id是“表单”。。我将制作一把小提琴并试一试。@Rocket是的,给我链接谢谢-这很好用。无论如何,如果选择为空,它可以显示警报。还可以扩展到包含另一个名为“文件”的选择吗?我已经从选择中删除了名称,现在它正在检查所有选择。。哪个好用。如果我能让它显示并发出警报,以及可能是尚未完成的ID或文件选择,那就太好了..:如果!this.value.length警报“需要填写所有表单字段”+this.name;在第一次返回之前添加..我打开了一个新问题,看看如何使警报更引人注目。。