如何使用__doPostBack()
2022-08-30 02:07:30
我正在尝试使用 在 ASP.NET 中创建异步回发,但我不知道该怎么做。我想使用vanilla JavaScript。__doPostBack()
像按钮单击这样的简单操作可能会导致事件触发。我只是试图了解这个机制是如何工作的。__doPostBack()
我正在尝试使用 在 ASP.NET 中创建异步回发,但我不知道该怎么做。我想使用vanilla JavaScript。__doPostBack()
像按钮单击这样的简单操作可能会导致事件触发。我只是试图了解这个机制是如何工作的。__doPostBack()
您可以在Web表单中使用名为btnSave的按钮尝试此操作,例如:
<input type="button" id="btnSave" onclick="javascript:SaveWithParameter('Hello Michael')" value="click me"/>
<script type="text/javascript">
function SaveWithParameter(parameter)
{
__doPostBack('btnSave', parameter)
}
</script>
在你的代码后面添加类似这样的东西来读取值并对其进行操作:
public void Page_Load(object sender, EventArgs e)
{
string parameter = Request["__EVENTARGUMENT"]; // parameter
// Request["__EVENTTARGET"]; // btnSave
}
试一试,让我们知道这是否适合您。
这也是让服务器端控件在 FancyBox 和/或 jQuery Dialog 中回发的好方法。例如,在 FancyBox-div 中:
<asp:Button OnClientClick="testMe('param1');" ClientIDMode="Static" ID="MyButton" runat="server" Text="Ok" >
</asp:Button>
JavaScript:
function testMe(params) {
var btnID= '<%=MyButton.ClientID %>';
__doPostBack(btnID, params);
}
服务器端Page_Load:
string parameter = Request["__EVENTARGUMENT"];
if (parameter == "param1")
MyButton_Click(sender, e);