我有一个标准视图和一些没有input
的标准runat=server
标记:
<button id="submit">submit</button>
<button id="clear">clear</button>
按任意一个导致页面提交。相反,我希望他们什么都不做,因为我正在用JQuery处理click
事件。我该怎么做?
修改
这是我的jquery代码
$('#submit').bind('click', submit_click);
function submit_click() {
alert('clicked submit');
}
答案 0 :(得分:5)
在您的事件处理程序中,您需要执行以下操作:
$("button").click(function(event){
event.preventDefault();
// do something
});
取自:http://docs.jquery.com/Events/jQuery.Event#event.preventDefault.28.29
<强>更新强> 这应该适用于您的代码:
$('#submit').bind('click', submit_click);
function submit_click(event) {
event.preventDefault();
alert('clicked submit');
}
答案 1 :(得分:4)
将此添加到您的点击事件绑定:
$('#submit').bind('click', submit_click);
function submit_click() {
alert('clicked submit');
return false;
}
返回false会停止按钮发生的常规行为,而只会执行代码。
答案 2 :(得分:2)
type
设置为button
:这将阻止表单提交。
无需其他JavaScript函数。
注意:未设置此属性 时,它将默认为submit
。
我假设您的button
控件位于form
标记或Html.BeginForm()
代码块中。
以下是一些示例:
<button onclick="alert('You Clicked Implicit Submit.')">Implicit Submit</button>//Post Back Form.
<button onclick="alert('You Clicked Submit.')" type="submit">Submit</button>//Post Back Form.
<button onclick="alert('You Clicked Button.')" type="button">Button</button>//Stay on Client Page.
对于简单的重定向(无需将表单重新发布回其默认操作),您还可以执行以下操作:
<button onclick="location.href='@Url.Action("Action", "Controller")'" type="button">Redirect</button>
特别感谢您在此处找到的答案:https://stackoverflow.com/a/17452739/555798