【问题标题】:auto-submit form only if specific number of checkboxes had been checked仅在选中特定数量的复选框时自动提交表单
【发布时间】:2013-12-05 22:27:47
【问题描述】:

我是 jQuery 的新手。我想知道是否有一种方法可以计算已选中的复选框的数量,然后在选中特定数量的复选框后自动提交表单。假设用户选中了 2 个复选框,没有任何反应。用户选中第三个复选框并提交表单。

<input type="checkbox"  onclick="this.form.submit();">

【问题讨论】:

  • 是的,这听起来可能。你的 jQuery 代码是什么样的?
  • $("input[type=checkbox]:checked").length 并且您得到检查的复选框数量。

标签: javascript jquery checkbox


【解决方案1】:

你可以试试这个,不使用内联 javascript...

HTML

<form>
    <input type="checkbox">
    <input type="checkbox">
    <input type="checkbox">
</form>

jQuery

$('input[type="checkbox"]').on('click', function (event) {
    var flag = $('input:checked').length > 2 ? true : false;
    if (flag) $('form').submit();
});

Fiddle

【讨论】:

    【解决方案2】:
    $('input[type="checkbox"]').on('change', function() {
       if( $("input[type="checkbox"]:checked").length >=3) { 
            $('form').submit();
       }
    });
    

    【讨论】:

      【解决方案3】:

      jQuery 函数:

      function SubmitIfReady() {
          if ($('.checkbox-class:checked').length == 5) { // specify the number you want
              $('#YourForm').submit();
          }
      }
      

      HTML(表格未显示):

      <input type="checkbox" class="checkbox-class" onclick="SubmitIfReady();">
      

      或者没有onclick:

      jQuery 函数:

      $(document).ready(function () {
          $('.checkbox-class:checked').on('change', function() {
              if ($('.checkbox-class:checked').length == 5) { // specify the number you want
                  $('#YourForm').submit();
              }
          });
      });
      

      HTML(表格未显示):

      <input type="checkbox" class="checkbox-class">
      

      【讨论】:

        【解决方案4】:

        像这样……

        $(".counted-check").click(function(e){
            var myForm = $(this).closest('form');
            if(myForm.find(".counted-check").filter(":checked").length > 3){
                myForm.submit();
            }
        });
        

        http://jsfiddle.net/HQ5N9/

        【讨论】:

          猜你喜欢
          • 2021-09-22
          • 2013-01-05
          • 1970-01-01
          • 2013-03-13
          • 2012-05-23
          • 2014-04-28
          • 1970-01-01
          相关资源
          最近更新 更多