无法从下拉列表中获取值[关闭]

Posted

技术标签:

【中文标题】无法从下拉列表中获取值[关闭]【英文标题】:Cant get the value from Drop down list [closed] 【发布时间】:2021-03-25 00:24:37 【问题描述】:

我将数据从 json 填充到下拉列表。

$(function()      
            $('#productList').append($('<option/>').attr("value", key).text(data[key].productName));
            
    )

这里的数据是 json 对象。当我执行此操作时,只要我关闭并打开下拉列表,该值就会成倍增加。 为了防止这种情况发生

$('#productList').empty();

但现在的问题是当我选择一个选项并关闭它重置的下拉菜单时。 那么如何在不重复选项的情况下选择一个选项并获得它的值。 提前致谢

我的html代码是

<label>Select The Product:</label><select id="productList">
</select>

【问题讨论】:

不要一直重新添加它们? 【参考方案1】:

尝试使用 for 循环:

Read More about for loop

$(document).ready(function()
        var data = [
    
        productName: "Product 1",
        value: "000"
    ,
    
        productName: "Product 2",
        value: "001"
    ,
    
        productName: "Product 3",
        value: "002"
    ,
    
        productName: "Product 4",
        value: "004"
    ,
    
        productName: "Product 5",
        value: "005"
    ,
    
        productName: "Product 6",
        value: "006"
    ,
    
        productName: "Product 7",
        value: "007"
    
];

var count = data.length;
for(var i = 0; i< count; i++)
    $('#productList').append('<option>'+data[i]['productName']+'</option')


);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<label>Select The Product:</label>
<select id="productList">

</select>

【讨论】:

【参考方案2】:

let data = [
    "name": "product 1",
    "price": "100"
  ,
  
    "name": "product 2",
    "price": "200"
  ,
  
    "name": "product 3",
    "price": "500"
  
];

$(function()     
  $.each(data, function (key, value) 
    $('#product')
    .append($('<option/>')
    .attr("value", key)
    .text(data[key].name));
    
  )        
            
)
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<select id="product" name="product">
</select>

【讨论】:

请始终考虑发表评论,解释为什么您的解决方案将解决 OP 的问题。

以上是关于无法从下拉列表中获取值[关闭]的主要内容,如果未能解决你的问题,请参考以下文章

Angular 6 无法从提供的对象中自动选择/绑定下拉列表值

无法从下拉列表中选择值

如何创建多个从同一个数组中获取值的动态下拉列表,而无需更改 Javascript 中的其他下拉列表

如何从选定的下拉列表中获取另一个值

从动态生成的下拉列表中获取值

当每个下拉列表动态创建ID时,jquery选择选项数据和值[关闭]