Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Ajax$.post()函数jquery的输出_Javascript_Jquery - Fatal编程技术网

Javascript Ajax$.post()函数jquery的输出

Javascript Ajax$.post()函数jquery的输出,javascript,jquery,Javascript,Jquery,我有这个jquery代码 $(document).ready(function(){ $('#lform').submit(function(){ $.post( 'processor.php', $(this).serialize(), //here, where we're going to manage the output data from the login.php fun

我有这个jquery代码

$(document).ready(function(){           

    $('#lform').submit(function(){
        $.post(
        'processor.php',
        $(this).serialize(),
        //here, where we're going to manage the output data from the login.php
        function(output){
            var ss = output;
            if (ss === "correct"){
                alert (ss);
            }else{
                $('body,html').animate({scrollTop: 20}, 800);
                $('#error').html(output);
                });
            }       
                return false;       
    });         

});
从上面的代码中可以看到,它只是将表单数据发布到
processor.php
,然后处理来自它的响应。它首先将输出存储到
var ss
中,然后检查输出是否等于“正确”。如果是,则警告“正确”,否则输出对
#error
的响应


上面的代码正在工作,但每当响应等于correct时,就会出现一些错误,一个警告框不会显示correct,而是将响应放在#error元素中

   }else{
            $('body,html').animate({scrollTop: 20}, 800);
            $('#error').html(output);
            });
        }
应该是:

  }else{
            $('body,html').animate({scrollTop: 20}, 800);
            $('#error').html(output);
  }
  return false;
});
        }else{
            $('body,html').animate({scrollTop: 20}, 800);
            $('#error').html(output);
        }
        return false;
    }

或者诸如此类的事情,我相当肯定});在中,else是错误的。

您的范围括号顺序错误,将使您的函数无法正常运行:

        }else{
            $('body,html').animate({scrollTop: 20}, 800);
            $('#error').html(output);
            });
        }

            return false;
应该是:

  }else{
            $('body,html').animate({scrollTop: 20}, 800);
            $('#error').html(output);
  }
  return false;
});
        }else{
            $('body,html').animate({scrollTop: 20}, 800);
            $('#error').html(output);
        }
        return false;
    }

你能告诉我们你在console.log你的输出变量时得到了什么吗?我同意@RobertKotcher的观点,控制台输出将不胜感激。这是判断出问题的最简单方法。如果您使用的是firefox(和firebug)或Chrome,很容易从控制台看到帖子和响应,您可以从那里开始。上面的代码可以工作,但只要响应等于正确,就会出现错误,一个警告框没有显示“正确”,而是将响应放在#错误元素中。您不能从异步请求处理程序
submit
事件处理程序返回false。在任何情况下,您都需要
preventDefault()
,一旦ajax请求表明有效性,您就必须再次手动提交。响应中是否会包含空白?也许可以尝试ss.trim()=“correct”上面的代码正在工作,但每当响应等于correct时,上面就有错误,一个警告框说correct没有出现,而响应被放入了#error元素上面的代码正在工作,但每当响应等于correct时,上面就有错误,一个警告框没有显示“正确”,而是将响应放在#error元素中返回false的位置是正确的,这无关紧要,因为它只会阻止页面提交到processor.php。