提交加载了相同自定义提交按钮的不同ajax

时间:2011-09-24 18:37:02

标签: jquery ajax forms

所以我想要做的事情有点复杂。那么,让我举一个我首先工作的代码示例:{im using jquery rotate plugin}

$("#img").rotate({ 
    bind: 
      { 
         click: function(){
           postlogic();
           $(this).rotate({ angle:0,animateTo:-360,easing: $.easing.easeInOutExpo });
         }
     } 

});

function submitlogic(){
    // ---------------- post cache ----------------//
    var firstpost = $("#form_1").serialize();
    var secondpost = $("#form_2").serialize();

    // ------------ post logic -----------------//              
    if(pagetrack = 1){
        $.post('query1.php',firstpost,function(data) { 
            $("#new_content_here").html(data);
        });
        var pagetrack = 2;
    } else if(pagetrack = 2){
        $.post('query2.php',secondpost,function(data) { 
            $("#new_content_here").html(data);
        });
        var pagetrack = 3;   
    }
}

基本上我希望这个图像成为我的提交按钮。此图像按钮将始终位于页面上并具有相同的行为。我有一些选项要发布,用户点击我的旋转按钮,选项提交到数据库,并显示新选项,然后用户继续从这些选项中进行选择。 “Pagetrack”跟踪我所处的形式。

我的问题是,在我第一次提交后,我无法再次提交提交。可能有一些我遗漏的大概念,但我不知道它是什么。任何人都可以帮助我吗?

1 个答案:

答案 0 :(得分:0)

您需要在pagetrack函数之外声明submitlogic变量,以便状态将保持在函数调用之间。

var pagetrack = 1;
function submitlogic(){
    // ---------------- post cache ----------------//
    var firstpost = $("#form_1").serialize();
    var secondpost = $("#form_2").serialize();

    // ------------ post logic -----------------//              
    if(pagetrack = 1){
        $.post('query1.php',firstpost,function(data) { 
            $("#new_content_here").html(data);
        });
        pagetrack = 2;
    } else if(pagetrack = 2){
        $.post('query2.php',secondpost,function(data) { 
            $("#new_content_here").html(data);
        });
        // if you have only two elements you should use pagetrack = 1; here
        pagetrack = 3;   
    }
}