0

メニューは3つあります。「個人情報」「モバイル情報」「ドキュメント」各ボタンには、GridViewを表示する独自のリンク/ページがあります。これで、他のメニューをクリックすると、ブラウザがページ全体をロードするため、他のページのロードに時間がかかります。そのことを変えたい。

今、私がやりたいのはです。グリッドビューが配置されている領域のみをロードしたいだけです。例:[個人情報]ボタンをクリックすると、その領域にPersonalInfo_Gridviewが表示され、[モバイル情報]ボタンをクリックすると、ページ全体を読み込まずに、PersonalInfo_GridviewがMobileInfo_Gridviewに置き換えられます。

これが私の3つのメニューのスクリーンショットです: ここに画像の説明を入力してください

どうやってやるの?Microsoft Expression Webを使用していますが、ASP.NETを使用してください。

4

2 に答える 2

4

を使用しUpdatePanelてデータを更新する必要があります。

UpdatePanel コントロールを使用すると、クライアント スクリプトを記述することなく、Web ページを部分ページ更新に参加させることができます。必要に応じて、カスタム クライアント スクリプトを追加して、クライアントのユーザー エクスペリエンスを向上させることができます。UpdatePanel コントロールを使用すると、ページの動作はブラウザーに依存せず、クライアントとサーバー間で転送されるデータの量を削減できる可能性があります。

メニューボタンを使用して更新をトリガーするために、さまざまなトリガーを設定する方法を見てください。

参照: ASP.NET UpdatePanel トリガーについて

于 2013-01-29T09:47:14.487 に答える
1

ちょうどこのような:

<asp:UpdatePanel ID="updPnlTabs" runat="server" >
         <Triggers>
            <asp:PostBackTrigger ControlID="btnPersonalInfo" />
            <asp:PostBackTrigger ControlID="btnMobileInfo" />
            <asp:PostBackTrigger ControlID="btnDocuments" />
         </Triggers>
         <asp:GridView runat="server" ID="ucLAD"/>
         <asp:Button Text="Personal Info" ID="btnPersonalInfo"  runat="server" Onclick="btnPersonalInfo_Click" />
         <asp:Button Text="Mobile Info" ID="btnMobileInfo"  runat="server" Onclick="btnMobileInfo_Click" />
         <asp:Button Text="Documents" ID="btnDocuments"  runat="server" Onclick="btnDocuments_Click" />
</asp:UpdatePanel>  

次に、GridViewを更新するには、次のOnClickようなアクションまたはメソッドにスクリプトを配置します。

    protected void btnPersonalInfo_Click(object sender, EventArgs e)
    {
         // your action here to update your GridView
    }
    protected void btnMobileInfo_Click(object sender, EventArgs e)
    {
         // your action here to update your GridView
    }
    protected void btnDocuments_Click(object sender, EventArgs e)
    {
         // your action here to update your GridView
    }
于 2013-01-29T09:59:32.423 に答える