我正在尝试序列化表单数据并将其绑定到我的控制器actionresult的模型参数。出于某种原因,我无法阻止下面的jquery / javascript生成的默认提交。你可以看到我放了多个e.preventDefault()s ..显然我只需要使用第一个(如果它工作),但它们没有工作。表单每次都完全提交,因此我的ajax调用的.done()部分永远不会运行。
$(document).ready(function () {
$('.save-attendance-record-button').click(function() {
$('#form-edit-attendance-record').submit();
$('#form-edit-attendance-record').on('submit', function(e) {
e.preventDefault();
return false;
var formData = $(this).serialize();
$.ajax({
dataType: 'html',
method: 'post',
url: resolveUrl('~/Home/EditAttendanceRecord'),
data: formData
})
.done(function (data) {
e.preventDefault();
$('#attendance-records-partial').html(data);
});
e.preventDefault();
});
});
});
[HttpPost]
public ActionResult EditAttendanceRecord(AttendanceRecord record)
{
//...
}