2013-11-26 35 views
1

如何检查使用jquery的下拉框是否发生了任何更改?检查选择标记的选定值的变化

<select id="bonus"> 
    <option value="1">-$5000</option> 
    <option value="2">-$2500</option> 
    <option value="3">$0</option> 
    <option value="4" selected="selected">$1</option> 
    <option value="5">We really appreciate your work</option> 
</select> 

初始选择的值是4,我不得不承认是否发生了标签 同我必须检查多选下拉也是所有更新/改变。

+1

看看[.change()](http://api.jquery.com/change/) –

+0

HTTP:/ /api.jquery.com/change/这可能有助于 – Anobik

+0

如果用户只需选择选项5,然后他自己恢复到4。 。改变将把这视为一种改变。但实际上价值并没有改变。如果用户只是选择选项5,那么我想处理这种情况也是 –

回答

1

尝试是这样的:

$("select").change(function() { 
     var txt = $(this).val(); 
     $(this).next('span.out').text(txt); 
    }).trigger('change');​ 

OR

$("select").each(function(){ 

    var select = $(this), 
     out = select.next(); 

    select.change(function() { 
     out.text(select.val()); 
    }); 

}).trigger('change'); 
1

JSFIDDLE

jQuery中的.change事件处理单选和多选下拉菜单。

这里是你的选择

$(function(){ 
    $("#bonus").change(function(){ 
     alert('changed'); 
    }); 
}); 

希望这段代码可以帮助

+0

,然后他自己恢复到4。 。改变将把这视为一种改变。但实际上价值并没有改变。我也想处理这种情况 –