Jquery重新加载整个页面而不仅仅是表单提交

时间:2014-02-17 04:11:38

标签: javascript php jquery ajax

我正在开发一个测验应用。我需要创建一个面板来添加问题。现在这是我正在使用的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();
});

1 个答案:

答案 0 :(得分:3)

您应该绑定到表单本身上的submit事件,而不是提交按钮。