简体   繁体   English

如何使用for循环从选择选项框中获取值[选择选项框是动态创建的]

[英]how to get values from select option box using for loop [select option box is created dynamically]

I'm trying to get values from select option box.我正在尝试从选择选项框中获取值。 but i get the first option box value only.但我只得到第一个选项框值。

i want all option box values which is selected.suppose in code there is 10 select option box is created, when user clicks on button then i want all that 10 select option box values and get stored in a variables or display that options which is selected by the user.我想要所有被选中的选项框值。假设在代码中创建了 10 个选择选项框,当用户点击按钮时,我想要所有这 10 个选择选项框值并存储在变量中或显示被选中的选项由用户。

i have done some code please refer my work from comment section it is on the jsfiddle website.我已经完成了一些代码,请从 jsfiddle 网站上的评论部分参考我的工作。 for more better understanding you can refer that.为了更好地理解,你可以参考。 sorry for my rookie language, i'm new to stackoverflow.抱歉我的菜鸟语言,我是 stackoverflow 的新手。 please don't hesitate to edit my information i would like that.请不要犹豫,编辑我想要的信息。

The id for all the elements are same in your code.您的代码中所有元素的 id 都相同。 Use document.querySelectorAll to get the list of elements.使用document.querySelectorAll获取元素列表。

 function getdata() { var num = document.getElementById("number").value; console.log(num); $(document).ready(function() { for (var i = 0; i < num; i++) { $('<div><select id="select-meal-type' + i + '"><option value="TYPE A">TYPE A</option><option value="TYPE B">TYPE B</option><option value="TYPE C">TYPE C</option></select><br></div>').appendTo('#container'); } }); } function getValues() { var nodeList = document.querySelectorAll("[id^=select-meal-type]") var values = Array.from(nodeList).map(val => val.value) console.log(values); }
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <br><br> type a number<input type="text" id="number"> <br><br> <div id="container"></div> <button onclick="getdata()">GET DATA</button> <button onclick="getValues()">GET VALUES</button>

Have a look on the following jsfiddle link: [jsfiddle.net/ypb9zLe8/][1]查看以下 jsfiddle 链接:[jsfiddle.net/ypb9zLe8/][1]

[1]: http://jsfiddle.net/ypb9zLe8/

Removed some code and inserted one extra button.删除了一些代码并插入了一个额外的按钮。 Have a look.看一看。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM