我有以下代码:
$(".foo-form").submit(function (event) {
event.stopPropagation();
event.preventDefault();
$.ajax({
url: this.action,
data: $(this).serializeArray(),
type: 'POST',
dataType: 'json',
success: function (data, msg, resp) {
var $form = $("#second-form");
$form.show().dialog({
resizable: false,
height:400,
width: 600,
modal: true,
title: "Recommendation added",
buttons: [
{
text: "OK",
click: doOK
},
{
text: "Cancel",
click: doCancel
}
]
});
}
})
return false;
});
如果我在页面上向下滚动并提交表单,当显示对话框时,它会将页面滚动到顶部。有没有办法覆盖这个?
不是解决方案的事情
- 固定
.ui-dialog
班级的定位。未修改(使用 Google 的 CDN) - 不取消事件 - 如您所见,我调用,
stopPropagation
并返回false。所以这并不是事件正在发生(即使是这样,它也不是指向页面顶部的哈希链接)preventDefault
使用 jQuery 1.72 和 jQuery UI 1.8.21(各自的最新版本)。