我的页面有两个控件,第二个控件的内容取决于第一个控件的下拉列表。我有一个问题,因为事件SelectedIndexChange是在我的回发后触发的。
我尝试使用更新面板和触发器,但它不起作用。
<asp:ScriptManager ID="ScriptManager1" runat="server" />
<asp:UpdatePanel ID="updatePanel1" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:DropDownList ID="ddlTest" runat="server" AutoPostBack="true" CssClass="form-control"
OnSelectedIndexChanged="ddlTest_SelectedIndexChanged" />
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="ddlTest" EventName="SelectedIndexChanged" />
</Triggers>
</asp:UpdatePanel>
是否有任何想法在回发之前强制事件“SelectedIndexChange”?
答案 0 :(得分:0)
这会奏效。请告诉我你想用下拉列表更改事件处理程序实现什么,并且可以帮助你在客户端回发之前完成它:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm11.aspx.cs" Inherits="WebApplication4.WebForm11" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<script src="Scripts/jquery-1.9.1.min.js"></script>
<script type="text/javascript">
$(function () {
$("#ddlTest").change(function () {
alert($("#ddlTest option:selected").text());
alert($("#ddlTest option:selected").val());
})
})
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:DropDownList runat="server" ID="ddlTest" >
<asp:ListItem Text="aText" Value="aValue" />
<asp:ListItem Text="bText" Value="bValue" />
</asp:DropDownList>
</div>
</form>
</body>
</html>