in

@Prog! - ASP.NET(C#) AJAX -

ASP.NET(C#) 2.0 & ASP.NET Ajax (ATLAS) のメモ書き

ASP.NET AJAX Sys.WebForms.PageRequestManager を使用しポストバックをキャンセルする

最新の投稿は、投稿日時: 2007/03/04 10:58 投稿者: ASANO です。スレッドには 2 件の返答があります。
ページ 1 / 1 (3 アイテム)
投稿の並べ替え: 前へ 次へ
  • 2007/03/04 10:58

    ASP.NET AJAX Sys.WebForms.PageRequestManager を使用しポストバックをキャンセルする

    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <title>Untitled Page</title>
    </head>
    <body>
        <form id="form1" runat="server">
            <asp:ScriptManager ID="ScriptManager1" runat="server">
                <Scripts>
                    <asp:ScriptReference Path="JScript.js" />
                </Scripts>
            </asp:ScriptManager>
           
            <asp:UpdatePanel ID="UpdatePanel1" runat="server">
                <ContentTemplate>
               
                <asp:Label ID="lbNow" runat="server"></asp:Label>
           
                <asp:Button ID="Button1" runat="server" Text="Refresh" OnClick="Button1_Click" />
                <asp:Button ID="Button2" runat="server" Text="Cancel" />
               
                </ContentTemplate>
            </asp:UpdatePanel>
           
        </form>
    </body>
    </html>

  • 2007/03/04 10:58 回答元:

    Re: ASP.NET AJAX Sys.WebForms.PageRequestManager を使用しポストバックをキャンセルする

    using System;
    using System.Data;
    using System.Configuration;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Web.UI.HtmlControls;

    public partial class _Default : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {

        }
        protected void Button1_Click(object sender, EventArgs e)
        {
            System.Threading.Thread.Sleep(2000);
            lbNow.Text = DateTime.Now.ToString();
        }
    }

  • 2007/03/04 10:58 回答元:

    Re: ASP.NET AJAX Sys.WebForms.PageRequestManager を使用しポストバックをキャンセルする

    // JScript ファイル

    Sys.Application.add_load(ApplicationLoadHandler)

    function ApplicationLoadHandler(sender, args)
    {
         Sys.WebForms.PageRequestManager.getInstance().add_initializeRequest(CheckStatus);
    }

    function CheckStatus(sender, args)
    {
      var pageRequestManager = Sys.WebForms.PageRequestManager.getInstance();
      if (pageRequestManager.get_isInAsyncPostBack() & args.get_postBackElement().id == 'Button2') {
         pageRequestManager.abortPostBack();
      }
      else if (pageRequestManager.get_isInAsyncPostBack() & args.get_postBackElement().id == 'Button1') {
         args.set_cancel(true);
      }
    }

    if(typeof(Sys) !== "undefined") Sys.Application.notifyScriptLoaded();

ページ 1 / 1 (3 アイテム)