[英]asp.net: how do i prevent users from posting the same data multiple times
[英]How do I stop a button event from posting in ASP.NET MVC?
我有一个标准视图和一些没有runat=server
标准input
标签:
<button id="submit">submit</button>
<button id="clear">clear</button>
按任一导致页面提交。 相反,我希望他们什么都不做,因为我正在使用JQuery处理click
事件。 我该怎么做呢?
编辑
这是我的jquery代码
$('#submit').bind('click', submit_click);
function submit_click() {
alert('clicked submit');
}
在你的事件处理程序中,你需要做:
$("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');
}
将其添加到您的点击事件绑定中:
$('#submit').bind('click', submit_click);
function submit_click() {
alert('clicked submit');
return false;
}
返回false会停止按钮发生的常规行为,而只会执行代码。
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
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.