我有以下表格:
<form id="squatsForm">
{% csrf_token %}
<input type="text" name="amount" id="squatsVal" value="Squats" />
<input type="hidden" name="exercise" value="squats" />
<input type="submit" id="submitSquats" value="Add Squats"/><br />
</form>
我想验证表单,然后通过 Ajax 以该表单发送数据以进行进一步处理。我正在尝试使用submitHandler
,因此表单不会执行使用 POST 请求加载新页面的默认操作,而是触发我的 Ajax 函数:
$(document).ready(function() {
$('#squatsForm').validate({
rules: {
amount: {
required: true,
number: true
}
},
submitHandler: function(form) {
$.post(
"submitWorkout1",
form.serialize(),
function(data) {
var jsonData = $.parseJSON(data);
$("#squats").html(jsonData['amount']);
});
}
});
但是,当我尝试使用表单输入数据时,它会重新加载页面并且不执行 Ajax 请求。
在我实施验证之前,我的 Ajax 请求运行良好。