asp.net – PostBackUrl在Html按钮上不可用
作者:互联网
我们目前正在使用PostBackUrl
的asp:Button执行跨页回发:
<asp:Button runat="server" PostBackUrl="processing.aspx" />
生成这个javascript onclick的东西:
<input type="submit" name="ctl03"
onclick="javascript:WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions('ctl03', ', false, ', 'processing.aspx', false, false))" />
我们想将它切换为使用普通的ol’< button runat =“server”> (easier to style)但是不支持PostBackUrl.
所以我想:如果只是在我的< button>中使用所说的JavaScript会怎么样?元件?
<button runat="server" name="ctl03"
onclick="javascript:WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions('ctl03', '', false, '', 'processing.aspx', false, true))">
</button>
并且waddayaknow,它的工作原理.
有没有人见过这件事呢?如果我继续这样做会给我或我的孩子带来什么伤害?
解决方法:
有趣的问题,我只看了ClientScript的GetPostBackEventReference方法,在这里我得到了:
ASP.NET页面上的按钮:
<button id="Button2" runat="server" name="Button2"></button>
代码隐藏:
PostBackOptions postBackOptions = new PostBackOptions(Button2);
postBackOptions.ActionUrl = "processing.aspx";
Button2.Attributes.Add("onclick",
ClientScript.GetPostBackEventReference(postBackOptions));
渲染结果:
<button id="Button2" name="Button2"
onclick="WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions("Button2", "", false, "", "processing.aspx", false, true))">
</button>
标签:javascript,asp-net,postback 来源: https://codeday.me/bug/20190522/1151686.html