在我的asp
页面中,我有form
个动作网址,该网址已归结为asp button click
,但现在我也调用了onclick
的{{1}}方法ASP button
不要让我解雇onclick事件。
如果我从asp页面中删除form action
。我可以触发form action
按钮。实际上我必须在动作完成后重定向到一个页面。我的源代码是:
onclick
C#代码:
<form action="URL1" runat="server" method="post">
<asp:Button ID="Button2" Text="Submit" runat="server" OnClick="Button2_Click2"
</form>
答案 0 :(得分:0)
你的表格标签是否形成良好?它还需要通过添加runat =“server”和id来实现“服务器控制”。
你目前有一个拼写错误:runnat =“server”应该是runat =“server”
答案 1 :(得分:0)
你应该使用
<form runat="server">
..
</form>
仅此而已
答案 2 :(得分:0)
您可以在按钮客户端点击事件上调用java脚本函数,如下所示
<asp:Button ID="Button2" UseSubmitBehavior="true" OnClientClick="javascript:return RedirectURL();" Text="Submit" runat="server" OnClick="Button2_Click2" />
在头部
中创建JavaScript函数 <script type="text/javascript">
function RedirectURL() {
window.location = "Your URL goes here.";
return false;
}
</script>
答案 3 :(得分:0)
像这样
<a href="http://www.url2.com/">
<asp:Label ID="lbl" runat="Server" Text="Button1">
</asp:Label>
</a>
这可能会帮助你。
答案 4 :(得分:0)
ASP.NET的默认行为是将表单元素的所有内容POST回到最初创建html并提供给客户端的页面类。当您单击按钮时,这是事件处理程序触发的必要条件。
但是,如果将form元素上action属性的值设置为其他文件的名称,则会覆盖默认行为,并将所有内容发布到该新位置。如果事件处理程序位于不同的位置,并且您没有向其发布任何数据,那么您怎么能期望事件处理程序触发。
如果将表单元素的action属性设置为定义事件单击处理程序的文件的名称,那么它肯定会触发。假设在Button.aspx中定义了“Button2_Click2”。
<form action="Default.aspx" runat="server" method="post">
在这种情况下,你并不需要“行动”属性。
因此,您的问题的原因不是动作属性的存在,而是您将回发重定向到其他位置。
最终,这是一个设计问题 - 我觉得你可以通过重新设计解决方案来实现目标。