【问题标题】:for each option from select2 multiple, append option value text into div using jquery对于 select2 中的每个选项,使用 jquery 将选项值文本附加到 div
【发布时间】:2019-07-23 08:21:47
【问题描述】:

使用我想按下一个按钮,将所选项目添加到 div #list

<select class="select2" multiple="multiple" name="string_items[]" id="string_items">
  <option>value i want to append</option>
</select>

从这里继续: 为此(假设每个项目都是使用.append ("&lt;div class =" item "&gt;" + option text + "&lt;/div&gt;") + 包含每个项目的文本的模板)

<div id="list">
    <div class="item">appended value</div>
</div>

我不是 JS 方面的专家,但我知道自己想要什么。我的 JS 代码:

$("#post-button").click(function(e){
  var items_list = $('#string_items').val(); //combo box / <select id="string_items">

  //for each item {
    //var item_tpl = '<div class="item">'+ <OPTION> TEXT </OPTION> +'</div>';   //My simple but powerful template for this example
    //$("#list").append(item_tpl); //adding to #list div
 //}

});

【问题讨论】:

    标签: javascript jquery arrays append jquery-select2


    【解决方案1】:

    你可以试试for...of循环:

    for...of 语句创建一个循环遍历可迭代对象,包括:内置 StringArray、类数组对象(例如,arguments NodeList)、TypedArrayMapSet 和用户定义的可迭代对象。它调用一个自定义迭代钩子,其中包含要为对象的每个不同属性的值执行的语句。

    $("#post-button").click(function(e){
      var items_list = $('#string_items').val();
      for (item of items_list){
        var item_tpl = '<div class="item"><OPTION> '+item+' </OPTION></div>';
        $("#list").append(item_tpl);
      }
    });
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
    <select class="select2" multiple="multiple" name="string_items[]" id="string_items">
    <option>Value 1 to append</option>
    <option>Value 2 to append</option>
    </select>
    <button type="button" id="post-button">Post</button>
    <div id="list">
        <div class="item">appended value</div>
    </div>

    【讨论】:

    • 谢谢,另外我不得不使用 .map () 并返回 .text () 因为我忘了提到每个 ,就像在:stackoverflow.com/a/29107900/8712160
    猜你喜欢
    • 2018-11-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-25
    • 2020-03-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多