网页教学网
 当前位置: 网页教学网 >> 网络编程 >> ASP.NET编程技术 >> ASP.NET中的doPostBack脚本函数实例
[ HTML ] [ FW ] [ DW ] [ FP ] [ JS ] [ XML ] [ CSS ] [ 图象 ] [ FLASH ] [ .NET ] [ ASP ] [ JSP ] [ PHP ] [ 数据 ] [ 系统 ] [ 安全 ] [ 素材 ] [ 建站 ] [ 主机 ] [ 入门 ] [ 技巧 ]

ASP.NET中的doPostBack脚本函数实例

http://www.webjx.com  更新日期:2007-10-25 15:36  出处:网页教学网  作者:站长整理

  今天来说说当ASP.NET中的doPostBack脚本函数的应用,ASPX页面有包含asp:LinkButton或者带有AutoPostBack属性且其值为true的服务器控件时,ASP.NET会自动为页面生成下面的脚本:

<input type="hidden" name="__EVENTTARGET" id="__EVENTTARGET" value="" /> 
<input type="hidden" name="__EVENTARGUMENT" id="__EVENTARGUMENT" value="" /> 
function __doPostBack(eventTarget, eventArgument) { 
    if(!theForm.onsubmit || (theForm.onsubmit() != false)) { 
        theForm.__EVENTTARGET.value = eventTarget; 
        theForm.__EVENTARGUMENT.value = eventArgument; 
        theForm.submit(); 
       } 
}

  __doPostBack带有两个参数:eventTarget和eventArgument。

  eventTarget是引起回送的控件的ID,eventArgument是回调参数(与控件相关的附加数据)。这两个参数分别由隐藏的两个表单域__ EVENTTARGET和__ EVENTARGUMENT保存。

  使用这两个隐藏的表单可以查找引起页面回送的控件ID和回送时的参数:

  protected void Page_Load(object sender, EventArgs e)
  {
  string target = Request.Params["__EVENTTARGET"];
  string args = Request.Params["__EVENTARGUMENT"];
  }

  因为asp:Button和asp:ImageButton不是使用__doPostBack回送页面,所以使用这两个控件回送页面时,上面的代码是无效的。

  使用HTML控件回送页面:

<form id="form1" runat="server"> 
<asp:LinkButton ID="LinkButton1" runat="server"></asp:LinkButton> 
<input type="button" value="Client Control" onclick="javascript:__doPostBack(’Button1’, ’Button Click’);" /> 
</form> 
protected void Page_Load(object sender, EventArgs e) 

    if(this.IsPostBack) 
    { 
        string target = Request.Params["__EVENTTARGET"]; 
        string args = Request.Params["__EVENTARGUMENT"]; 
        Response.Write("Button ID: " + target + "<br />"); 
        Response.Write("Arguments: " + args + "<br />"); 
    } 

  加入的目的是为了让ASPX自动生成__doPostBack脚本。

  阻止asp:Button提交页面:

<form id="form1" runat="server"> 
<asp:Button ID="Button1" runat="server" Text="Button" /> 
</form> 
protected void Page_Load(object sender, EventArgs e) 

    string scr = "return confirm(’Are you sure you want to submit this form?’);"; 
    this.Button1.Attributes.Add("onclick", scr); 
}

关键词:ASP.NET,doPostBack,脚本函数
推荐给好友】【关闭】【收藏本文
最新五条评论
查看全部评论
评论总数 0
您的评论
用户名: 新注册) 密 码: 匿名:
·用户发表意见仅代表其个人意见,并且承担一切因发表内容引起的纠纷和责任
·本站管理人员有权在不通知用户的情况下删除不符合规定的评论信息或留做证据
·请客观的评价您所看到的资讯,提倡就事论事,杜绝漫骂和人身攻击等不文明行为