前台页面:
<
asp:Button
id
="btnMy"
runat
="server"
Text
="postbackevent_server"
></
asp:Button
>
< br >
< br >
< br >
< input type ="button" value ="click_client" onclick ="test()" >
< br >
< br >
< br >
< input type ="button" value ="click_client" onclick ="test()" >
.cs:
private
void
Page_Load(
object
sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
string js = "<script>";
js += "function test(){";
js += this.Page.GetPostBackClientEvent(this.btnMy,"");
js += "}";
js += "</script>";
this.Page.RegisterClientScriptBlock(Guid.NewGuid().ToString(),js);
}
private void btnMy_Click( object sender, System.EventArgs e)
{
Response.Write("Click btnMy!");
}
{
// 在此处放置用户代码以初始化页面
string js = "<script>";
js += "function test(){";
js += this.Page.GetPostBackClientEvent(this.btnMy,"");
js += "}";
js += "</script>";
this.Page.RegisterClientScriptBlock(Guid.NewGuid().ToString(),js);
}
private void btnMy_Click( object sender, System.EventArgs e)
{
Response.Write("Click btnMy!");
}
观察输出后的HTML:
输出了:<script>function test(){__doPostBack('btnMy','')}</script>
也就是说GetPostBackClientEvent的输出为:
__doPostBack('btnMy','')
这个和之前写过的一篇BLOG( 用户控件 MagicAjax 选择器 __doPostBack )其实表达的是同一个作用:即触发页面中控件的事件,引起页面回发。