我正在开发一个测验应用。我需要创建一个面板来添加问题。现在这是我正在使用的AJAX代码。我对以下代码有两个问题。 (i)在调用ajax函数之后,页面完全重新加载。 (ii)奇怪的是,有时数据会被提交,有时则不会。
我不确定我在哪里弄错了。请帮助。谢谢:)
function ajaxinsert() {
var questionVal = $("#question").val();
var option1 = $("#optiona").val();
var option2 = $("#optionb").val();
var option3 = $("#optionc").val();
var option4 = $("#optiond").val();
//alert(questionVal+option1+option2+option3);
$.ajax({
url: 'admin/insertQuestion',
type: 'POST',
cache: false,
data: {
question: questionVal,
optiona: option1,
optionb: option2,
optionc: option3,
optiond: option4
},
dataType: 'json',
success: function (reply) {
console.log(reply);
},
error: function (xhr, desc, err) {
console.log(xhr);
console.log("Desc :: " + desc + "\nError :: " + err);
}
});
}
$("#insert-button").on('submit', function (e) {
e.preventDefault();
ajaxinsert();
});
答案 0 :(得分:3)
您应该绑定到表单本身上的submit
事件,而不是提交按钮。