4

私は ajax が初めてで、Visual Studio 2005 とフレームワーク 2.0 を使用しています。単純な Ajax サンプルでは、​​ボタン クリックのページ読み込みイベントが常に発生します。展開はなく、すべてデバッグ モードで実行しているだけで、Page_Loadイベントに移動します。何が問題なのかわからない?falseUpdatePanel1.IsInPartialRendering and ScriptManager1.IsInAsyncPostBackの値を確認しました。ここに私のコードがあります、

 <form id="form1" runat="server">
    <asp:ScriptManager ID="ScriptManager1" runat="server" EnablePartialRendering="true" >
    </asp:ScriptManager>
<div>
    <asp:UpdatePanel ID="UpdatePanel1" runat="server">
    <ContentTemplate>
        <asp:Label ID="Label1" runat="server" Text=""></asp:Label><br />
        <asp:Button ID="Button1" runat="server" Text="PostBack" OnClick="Button1_Click" />
    </ContentTemplate>
    </asp:UpdatePanel>
</div>

protected void Button1_Click(object sender, EventArgs e)
{
    Label1.Text = DateTime.Now.ToLongTimeString()+UpdatePanel1.IsInPartialRendering+ScriptManager1.IsInAsyncPostBack;
}

Googleとstackoverflowは今のところ役に立ちません。だからどんな親切な心も私を助けてくれる...

4

2 に答える 2

7

Control Inside Update パネル 原因asynchronous postback. 非同期ポストバックとは リファレンスから MSDN へ

An asynchronous postback behaves much like a synchronous postback. All the server page life-cycle events occur, and view state and form data are preserved. However, in the rendering phase, only the contents of the UpdatePanel control are sent to the browser. The rest of the page remains unchanged.

部分レンダリングの使用よりもサーバー上ですべてのイベントが発生する場合...

部分ページ レンダリングでは、ポストバックの結果としてページ全体を更新する必要がなくなります。代わりに、変更されたページの個々の領域のみが更新されます。その結果、ポストバックのたびにページ全体がリロードされるのをユーザーが見ることがなくなり、Web ページとのユーザーの対話がよりシームレスになります。

于 2013-07-09T04:31:27.180 に答える
0

私は自分の Web.forms に少し慣れていませんが、思い出すと、それは設計によるものです。Page_Load は、AJAX 更新パネルがサーバーに要求を送信するときに発生します。

于 2013-07-09T03:43:29.003 に答える