如何检查两个复选框何时都具有 jQuery 的非空值

How to check when two check boxes both have nonempty values with jQuery

所以我试图做到这一点,当用户点击其中一个选项时,没有任何反应,但他们第二次点击 select 另一个 select 或(其值不为空),页面将立即提交。我知道我可以使用提交按钮,但我真的不喜欢那些。

有谁知道如何解决这个问题?

这里有一个小的假设情况:

 <script     src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script>

<select name="select" id="select">
    <option value=''>--- Select ---</option>";
    <option value=1>a</option>";
    <option value=2>b</option>";
    <option value=3>c</option>";
</select>

<select name="select2" id="select2">
    <option value=''>--- Select ---</option>";
    <option value=1>a</option>";
    <option value=2>b</option>";
    <option value=3>c</option>";
</select>

这是我的 js:

$(document).ready(function () {
   if( $('#select').val() && $('#select2').val()) { 
    alert("aa");
    submit();
   }
});

此外,为了方便起见,这里有一个 jfiddle:https://jsfiddle.net/bcknhe36/1/

您需要检查更改,而不是检查文档是否准备就绪。因此,当下拉列表更改时,检查两者是否都有值。

已更新 fiddle:https://jsfiddle.net/bcknhe36/4/

$(document).ready(function() {
 $( "#select,#select2" ).change(function() {
  if ($('#select').val() && $('#select2').val()) {
    alert("aa");
    submit();
  }
});

});

您只检查页面加载

您需要在用户选择后检查更改事件处理程序

$(document).ready(function() {
  $('#select,#select2').on('change', function() {
    if ($('#select').val() && $('#select2').val()) {
      alert("aa");
      $('#formID').submit();
    }
  });
});