参考ASP.Net 页面的客户端
你不能这样做。Button(input type=submit) 的默认行为是submit/post
将表单发送到表单action
属性中指定的 url。
如果你想防止默认行为,你需要编写一个 javascriptreturn false
<asp:Button ID="btn" OnClientClick="return false" runat="server" Text="Button" />
默认情况下,asp.net 将表单发布到同一页面本身。我们将其称为 PostBack。在浏览器中查看呈现的 html 中的表单标记操作值,它将是相同的页面名称
<input type =submit name ="btn" id="btn"
onclick="javascript:__doPostBack('btn','')"value ="Button">
以下内置 javascript 代码执行此操作
<script>
function __doPostBack(eventTarget, eventArgument) {
document.Form1.__EVENTTARGET.value = eventTarget;
document.Form1.__EVENTARGUMENT.value = eventArgument;
document.Form1.submit();
}
</script>
您的页面将自动添加以下字段,以检测需要在服务器端触发的事件。您可以简单地在请求参数中访问,例如Request.Params["__EVENTTARGET"]
<input type =hidden name ="__EVENTTARGET" value ="">
<input type =hidden name ="__EVENTARGUMENT" value ="">