当我更改下拉列表的值时,如何在javascript 或 jQuery中获取下拉列表的先前 SELECTED 值。
<asp:DropDownList ID="ddlTest" ....>
我正在动态填充此下拉列表。
当我更改下拉列表的值时,如何在javascript 或 jQuery中获取下拉列表的先前 SELECTED 值。
<asp:DropDownList ID="ddlTest" ....>
我正在动态填充此下拉列表。
我不确定这是否是最好的方法,但您可以将点击处理程序附加到下拉列表中。单击下拉列表时,将当前值存储在变量中。然后在您的下拉更改功能中,您将该变量引用为先前选择的值。
编辑:参见@tymeJV 示例。
您可以设置一个click
处理程序和一个change
处理程序来捕获两者:
var old;
var newV;
$("#<%= ddlList.ClientID %>").click(function() {
old = this.value;
});
$("#<%= ddlList.ClientID %>").change(function() {
newV = this.value;
console.log(newV);
console.log(old);
});
演示:http: //jsfiddle.net/tymeJV/ZG8cN/
我能看到的最简单的方法是将页面加载时的初始值存储在 Javascript 变量中,然后在选择更改时跟踪旧值:
<asp:Content runat="server" ID="FeaturedContent" ContentPlaceHolderID="FeaturedContent">
<script type="text/javascript">
$(document).ready(function () {
var ddlTest_prevValue = "<%=ddlTest.SelectedValue %>";
$("#<%=ddlTest.ClientID%>").change(function () {
$("#prevValTxt").text("Previous value: " + ddlTest_prevValue);
ddlTest_prevValue = $("#<%=ddlTest.ClientID%>").val();
});
});
</script>
<asp:DropDownList ID="ddlTest" runat="server" Width="100" />
<div id="prevValTxt"></div>
</asp:Content>