【问题标题】:How to Grab multiple values from checkboxes with Jquery如何使用 Jquery 从复选框中获取多个值
【发布时间】:2014-12-05 19:19:12
【问题描述】:

我目前有这个表格

 <form class='lostKittieForm'>


      <label class="kittieColor"><input type="checkbox" value="Black">Black</label>
      <label class="kittieColor"><input type="checkbox" value="Brown">Brown</label>
      <label class="kittieColor"><input type="checkbox" value="White">White</label>
      <label class="kittieColor"><input type="checkbox" value="Gray">Gray</label>
      <label class="kittieColor"><input type="checkbox" value="Orange">Orange</label>
      <label class="kittieColor"><input type="checkbox" value="Multicolored">Multicolored</label>

      <input type="submit">

 </form>

我的 Jquery 代码试图抓取所有检查的值,但由于某种原因它只抓取一个和“黑色”

 kittie.color =  $(".lostKittieForm input[type='checkbox']").val();

提前致谢!

【问题讨论】:

    标签: jquery checkbox input


    【解决方案1】:
    $("checkbox").each(function(e){
    
    var checkVal = $(this).val();
    
    });
    

    $('.lostKittieForm input:checked').each(function() {
        var checkVal = $(this).val();
    }); // will return the value for "checked" checkboxes
    

    循环将针对每个复选框运行,您可以在 checkVal 变量中一一获取每个复选框的值。

    对于 .each() 的文档,请转到 .

    http://api.jquery.com/each/

    【讨论】:

      【解决方案2】:

      kittie.color = $("input:checked").each(function() {alert($(this).val());});

      这里是获取值的代码

      【讨论】:

      • 这也有效!谢谢你!不过,它正在提醒价值观。我是否需要将所有这些存储到一个变量中,例如 x 然后 x = kittie.color ?
      • 是的。您可以在该函数之外声明一个数组变量。像这样的东西。 var color_list = []; kittie.color = $("input:checked").each(function({color_list.push($(this).val());});
      【解决方案3】:

      试试这个:

      var kittieColor = new Array();
      $('.kittieColor').each(function() {
          if ($(this).find('input').is(':checked')) {
              kittieColor.push($(this).find('input').val());
          }         
      });
      
      alert(JSON.stringify(kittieColor));
      

      【讨论】:

        【解决方案4】:

        你需要一个循环

        var colorsChecked = [];
        $('input:checkbox.class').each(function () {
              colorsChecked.push(this.checked ? $(this).val() : "");
        });
        

        【讨论】:

          猜你喜欢
          • 2020-06-01
          • 2021-11-21
          • 1970-01-01
          • 2018-09-17
          • 2013-10-11
          相关资源
          最近更新 更多