用户在下拉列表中进行选择时的Jquery事件

时间:2012-04-27 15:07:56

标签: jquery

我有一个下拉列表。 在Jquery中,当用户进行选择时,我将使用什么事件。

下拉列表的ID是drp1

我尝试了以下但没有奏效:

$("#ddrp1").SelectChanged(SelectionItem);

4 个答案:

答案 0 :(得分:20)

使用change()事件:

$("#ddrp1").change(function() {
    // Pure JS
    var selectedVal = this.value;
    var selectedText = this.options[this.selectedIndex].text;

    // jQuery
    var selectedVal = $(this).find(':selected').val();
    var selectedText = $(this).find(':selected').text();
});

在jQuery 1.7中,您可以使用.on()

$("#ddrp1").on("change", function() {
    // Pure JS
    var selectedVal = this.value;
    var selectedText = this.options[this.selectedIndex].text;

    // jQuery
    var selectedVal = $(this).find(':selected').val();
    var selectedText = $(this).find(':selected').text();
}​​​​);​

这是使用on()

a working jsFiddle

答案 1 :(得分:3)

您想要的是onchange事件,可以写成

 $("#ddrp1").change (function () { 
 });

答案 2 :(得分:2)

使用jQuery change事件处理程序。

$("#ddrp1").change(function(){
    //selection changed
    alert(this.value);//this will give the selected option's value
    alert($(this).find(':selected').text());//this will give the selected option's text
});

绑定change事件处理程序的替代方法是。

$("#ddrp1").bind('change', function(){

});

答案 3 :(得分:0)

您需要使用change()

当元素的值更改时,发生jQuery change事件。

此事件仅限于input个元素,textarea个框和select个元素。

$("#ddrp1").change (function () { 

     var getText = $(this).find(':selected').text();
     alert (getText); // show the text value of the selected element ...

 });