[英]How to replace a codebehind method with an aspx method using ternary operator
[英]how to target codebehind method using __DoPostBack without hidden control
我想使用__DoPostBack调用服务器端方法,但是我不希望页面中有隐藏的ASP Runat服务器控件。 是否可以通过名称而不是触发它的控件名称来调用服务器端方法?
问题是,我在aspx页面上有一个带onclick =“ ExportButton_Click”的asp按钮,单击该按钮时,它将调用Exportback_Click代码隐藏(服务器端)方法。 我的问题是,我想摆脱asp按钮,因为我试图动态创建一个按钮,单击该按钮将执行相同的操作。 现在,我动态创建的按钮正在调用doPostBack javascript函数,该函数的目标是触发ExportButton_Click的asp按钮。 因此...可以在没有ASP按钮的情况下使用__doPostBack调用ExportButton_Click代码隐藏方法吗? 提前致谢。
像这样将事件目标参数传递给__DoPostBack('myEvent')
方法。
然后,在您的Page_Load()
背后的代码中,放置以下代码:
if (Request.Form["__EVENTTARGET"] == "myEvent")
{
//call your button click function, and pass the button to it (can pass null as the EventArgs)
Button1_Click(Button1, null);
}
这两种方法是您的服务器端朋友:
this.Page.ClientScript.GetPostBackEventReference
this.Page.ClientScript.GetPostBackClientHyperlink
它们可用于生成JavaScript以链接到您的服务器端事件。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.