如何使用javascript获取下拉选择值?

如何使用javascript获取下拉选择值?,javascript,jquery,asp.net,Javascript,Jquery,Asp.net,我有一个asp.net DropdownList控件。当我使用这个代码时 var id = $("[id*='drpCategory'] option:selected").val(); id始终是下拉列表的第一个索引。如何获取其他选定值 您可以循环使用选择元素,请注意单独使用属性选择器太慢,请尝试以下操作: $("#input_id").click(function(){ var id = $("#drpCategory option:selected").val(); }) $

我有一个asp.net DropdownList控件。当我使用这个代码时

var id = $("[id*='drpCategory'] option:selected").val();

id始终是下拉列表的第一个索引。如何获取其他选定值

您可以循环使用
选择
元素,请注意单独使用属性选择器太慢,请尝试以下操作:

$("#input_id").click(function(){
 var id = $("#drpCategory option:selected").val();
})    
$("select[id*='drpCategory']").each(function(){
   alert(this.value)
})

您可以循环选择元素,请注意单独使用属性选择器太慢,请尝试以下操作:

$("select[id*='drpCategory']").each(function(){
   alert(this.value)
})
jquerys
.val()
将返回下拉列表中的选定值,如果下拉列表允许多个值,则返回选定值的数组

var selectedItems = $('[id*="drpCategory"]').val();

jquerys
.val()
将返回下拉列表中的选定值,如果下拉列表允许多个值,则返回选定值的数组

var selectedItems = $('[id*="drpCategory"]').val();

试着这样做:

var values = $("select[id*='drpCategory']").map(function(){
    return this.value;
}).get();
您将拥有所有
下拉列表的选定值。

尝试如下:

var values = $("select[id*='drpCategory']").map(function(){
    return this.value;
}).get();

您将拥有所有
下拉列表中的选定值。

是否有一个下拉列表允许选择一个值?多重价值观?多个下拉列表?您遇到的问题是选择器返回多个元素。在您的例子中,id变量现在是必须循环的选定选项的列表。下面使用的任何答案。each()都将提供您所需的。您是否对哪个ID具有哪些值感兴趣,或者您是否正在处理这样一种情况:您有多个选择元素,可以从中选择项目并将其设置为一个集合?您是否有一个下拉列表,允许选择一个值?多重价值观?多个下拉列表?您遇到的问题是选择器返回多个元素。在您的例子中,id变量现在是必须循环的选定选项的列表。下面使用的任何答案。each()都将提供您所需的。您是否对哪个ID具有哪些值感兴趣,或者您是否正在处理这样一种情况:您有多个select元素,可以从中选择项,并且这些元素将成为一个集合?喜欢这种方法。也许你应该选择[id*='drpCategory']
,因为他们的选择成本很高。谢谢你的回答。我试过了,但没有改变。当我选择了3。项目(第三个项目值为22),该值始终为下拉列表的第一个项目值(第一个项目值为2):解决此方法。也许你应该选择[id*='drpCategory']
,因为他们的选择成本很高。谢谢你的回答。我试过了,但没有改变。当我选择了3。项目(第三个项目值为22),该值始终为下拉列表的第一个项目值(第一个项目值为2):请解释您的否决票。OP特别提到“我有一个asp.net DropdownList控件”,单数,一个下拉列表,这可以很好地使用。请解释你的反对票。OP特别提到“我有一个asp.net DropdownList控件”,单数,一个下拉列表,这可以很好地使用。