【问题标题】:Get all select values per div with multiple divs with same classname使用具有相同类名的多个 div 获取每个 div 的所有选择值
【发布时间】:2019-03-23 17:23:41
【问题描述】:

当有多个具有相同类名的 div 时,有没有办法在具有特定类名的 div 中获取所有选定值的数组?

<div class="mydiv">
<select name="first">
     <option value="1">One</option>
     <option value="2">Two</option>
</select>
<select name="second" ">
     <option value="1">One</option>
     <option value="2">Two</option>
</select> </div>

<div class="mydiv">
<select name="first">
     <option value="1">One</option>
     <option value="2">Two</option>
</select>
<select name="second" ">
     <option value="1">One</option>
     <option value="2">Two</option>
</select> </div>

如果我这样做:$(".mydiv").each(function (){ });

我将通过两个 div 循环(总共两次,因为我有两个类为 mydiv 的 div),这正是我想要的。现在我想为每个选择(第一个和第二个)获取每个 div 中的选定值。

【问题讨论】:

    标签: javascript jquery select


    【解决方案1】:

    您可以使用map()

    以下假设您希望每个 &lt;div&gt; 都有一个子数组

    let res = $('.mydiv').map(function(){
        return [$(this).find('select').map(function(){
            return $(this).val()
        }).get()]
    }).get()
    
    console.log(res)
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
    <div class="mydiv">
      <select name="first">
        <option value="1" selected>One</option>
        <option value="2">Two</option>
      </select>
      <select name="second">
        <option value="1">One</option>
        <option value="2"  selected>Two</option>
      </select>
    </div>
    
    <div class="mydiv">
      <select name="first">
        <option value="1">One</option>
        <option value="2"  selected>Two</option>
      </select>
      <select name="second">
        <option value="1">One</option>
        <option value="2"  selected>Two</option>
      </select>
    </div>

    对于平面数组,只需:

    let res = $('.mydiv select').map(function(){
       return $(this).val();
    }).get();
    

    【讨论】:

    • 这正是我想要实现的。谢谢你:)
    猜你喜欢
    • 1970-01-01
    • 2014-05-03
    • 2021-01-02
    • 1970-01-01
    • 1970-01-01
    • 2011-09-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多