Ajax成功的页面重装

时间:2013-08-28 15:54:02

标签: jquery ajax accordion reload

我有一个表格被分割成三个div,以手风琴风格显示并在Ajax调用中提交,但似乎页面正在重新加载,因为任何显示的手风琴div都会在调用后隐藏。我想我已经正确地阻止了默认操作,但似乎我错过了一些东西。

//------------------ accordion -------------------------------------
$('.heading').on('click', 'img', function() {

    var x = $(this).parent().next('div');
    $(x).slideToggle(function() {
        if($(x).not(":hidden")) {
            $(this).prev().find('img').attr('src','images/triangle_red_up.jpg');
            }
        if($(x).is(":hidden")) {
                $(this).prev().find('img').attr('src','images/triangle.jpg');
                }
        });
    });

Ajax
//------------------ form submit -----------------------------------        
$('form').submit(function(e) {
        e.preventDefault(); 
    var datastring = $(this).serialize();

    $.ajax({
        type: "POST",
        url: "includes_php/pU_6.php",
        data: datastring,
        dataType: "json",
        success: function(data) {
            messages(data);
        }
        })
     })

$('input#submit').click() {
$('form').submit();

});

2 个答案:

答案 0 :(得分:0)

试试这个

    $('#submit').click() {
            e.preventDefault(); 
        var datastring = $('form').serialize();//if you have a form id use $('<frm id>').serialize()

        $.ajax({
            type: "POST",
            url: "includes_php/pU_6.php",
            data: datastring,
            dataType: "json",
            success: function(data) {
                messages(data);
            }
           });
 });

答案 1 :(得分:0)

我的不好 - 在messages()函数中有一个location.reload。