我的模型有一个强类型视图,我想要的是当用户点击提交时,会弹出一个确认框,确认用户确实希望提交表单,如果他们点击取消那么它不应该为该视图触发HttpPost
动作,这可能吗?
答案 0 :(得分:26)
当然有可能。我喜欢用一种不引人注目的方法。这是一个简化的例子:
jQuery(document).ready(function () {
jQuery('[data-confirm]').click(function (e) {
if (!confirm(jQuery(this).attr("data-confirm")))
{
e.preventDefault();
}
});
});
然后,您只需要在提交按钮中添加数据确认属性,例如
<input type="submit" data-confirm="are u sure?" />
当然,你可以在链接,按钮等上使用这个属性。你不仅限于提交按钮,如果你想在晚些时候实现一个发明者确认对话框,你只需要在一个地方替换代码。
答案 1 :(得分:4)
你可以为它添加一个简单的jQuery调用。
在视图的末尾添加:
<script type="text/javascript">
$("form").submit(function() {
return confirm('Are you sure?');
});
</script>
或添加
onsubmit="return confirm('Are you sure?');"
作为新元素属性
答案 2 :(得分:4)
function doSubmit()
{
if(window.confirm("ARE YOU SURE TO PERFORM THIS ACTION"))
{
return true;
}
else return false;
}
在表单的doSubmit()
事件上调用onsubmit
函数,
例如 - onsubmit="return doSubmit()
答案 3 :(得分:0)
我相信这可以通过使用jquery覆盖提交按钮来完成。 Jquery .submit()
这样,当该人点击提交时,您可以显示一条消息并提交或取消。