是否有不会提交表单数据的 ASP 按钮。
每当我单击一个 asp 按钮时,它都会发布表单数据,我想更改该行为以便发布一些其他表单数据,我将以编程方式创建它。
使用属性 UseSubmitBehaviour="false" 解决了我的问题
<asp:Button ID="button1" runat="server" UseSubmitBehavior="false" Text="just a button" />
此属性自 .Net v2.0 起可用,有关详细信息:Button.UseSubmitBehavior 属性
您需要使用 JavaScript 并拦截onclick
事件,然后进行 Ajax 调用。
在事件处理程序中,返回false
并且您的表单将不会被提交。像这样的东西:
<script>
function on_s() {
/// do some AJAX with JQuery or any other library
$.ajax({ url: "your_asp_entry.aspx" });
// you can add some processing to the AJAX call
return false;
}
</script>
<body>
<form runat="server">
<asp:Button id="b1" Text="Submit" runat="server" OnClick="return on_s();" />
</form>
</body>
在your_asp_entry.aspx
你做任何你需要调用你的 C# 函数/方法的事情。
更新:在 OP 谈到他/她需要调用 C# 函数的评论后更改了答案。
添加
onclientclick="Javascript:return false;"
到 aspbutton
这是一个没有表单提交的示例按钮 html 按钮,只需使用带有 runat="server" 和type="button"的 html 按钮。
<input id="butDelete" runat="server" class="btn btn-danger" type="button"
value="Delete" OnServerClick="butDelete_ServerClick" onclick="if
(!confirm('Sure?')) return;"/>