AJAX 呼び出し内のサーバーからアラートを取得したいのですが、何かがクライアントでの起動をUpdate Panel
ブロックしています。HttpContext.Current.Response.Write
これは非常に単純な aspx 本文の内容です
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<div>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<!-- DropDownList doesn't work here -->
</ContentTemplate>
</asp:UpdatePanel>
<asp:DropDownList ID="DropDownList1" runat="server" AutoPostBack="True">
<asp:ListItem Value="1">First</asp:ListItem>
<asp:ListItem Value="2">Second</asp:ListItem>
</asp:DropDownList>
</div>
</form>
そして、ここで私はVBでそれを処理しています
Protected Sub DropDownList1_SelectedIndexChanged(sender As Object, e As EventArgs) _
Handles DropDownList1.SelectedIndexChanged
Dim alertMsg As String
Dim alertScript As String
'DO OTHER STUFF HERE
alertMsg = String.Format("You Selected {0}", DropDownList1.SelectedItem.Text)
alertScript = String.Format("<script type= text/javascript>alert('{0}');</script>", alertMsg)
System.Web.HttpContext.Current.Response.Write(alertScript)
End Sub
どちらの場合も vb コードが起動しますが、UpdatePanel の内部ではなく外部で呼び出された場合にのみ、アラート メッセージのスクリプトが作成されます。
私は何を間違っていますか?