Jquery 提交使用相同的自定义提交按钮加载的不同ajax

Jquery 提交使用相同的自定义提交按钮加载的不同ajax,jquery,ajax,forms,Jquery,Ajax,Forms,所以我想做的有点复杂。让我先给出一个代码示例:{} 基本上我希望这个图像是我的提交按钮。此图像按钮将始终位于页面上,并具有相同的行为。我有一些选项要发布,用户点击我的旋转按钮,这些选项将提交到数据库,并显示新选项,然后用户继续从中选择。Pagetrack跟踪我所在的表单 我的问题是,在我第一次提交后,我无法让提交再次工作。我可能遗漏了一些重要的概念,但我不知道它是什么。有人能帮我吗?您需要在submitlogic函数之外声明pagetrack变量,以便在函数调用之间保持状态 var pagetr

所以我想做的有点复杂。让我先给出一个代码示例:{}

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

我的问题是,在我第一次提交后,我无法让提交再次工作。我可能遗漏了一些重要的概念,但我不知道它是什么。有人能帮我吗?

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

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;   
    }
}

你在找什么?服务器代码还是在其回显后通过?之后,它的回声通过它只是一串单选按钮在div中的一种形式。我的表单标签的唯一属性是一个id。我划分了菜单,因为间距很奇怪。我看不到表单2,它在哪里?你为什么要把所有的田地都藏起来?嘿,我试过了,没用。看起来我的值正在提交,所选单选按钮消失;但是我的图像没有旋转,第二篇文章也没有显示出来。我想问题是pagetrack的值没有被全局设置,我的范围有问题,但我无法解决。我认为这可能会起作用,但它没有弄明白-变量需要从pagetrack中删除-它关闭了变量的作用域。我现在仍然有图像旋转的问题。当我单击“图像”时,它会提交,但它仍然不会旋转。
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;   
    }
}