Javascript 仅在jQueryAjax中脚本返回空白
我有一个非常令人沮丧的问题。我向PHP文件发送AJAX请求,当我看到Chrome网络工具时,它不会返回任何JSON。但当我尝试通过Chrome中的POSTMAN工具发布相同的数据时,它返回正确。当我正常打开脚本时,它会正确返回。就在我通过AJAXm请求时,它什么也不返回 这是我的PHP文件:(我知道现在它在功能上是无用的,我需要在它能做我需要的事情之前修复这个错误) 3号线肯定有问题,因为当我把它放出来的时候,它就工作了。但函数是100%存在的,因为当我输入函数的无意义名称时,它会写一个错误。DB查询也是正确的,我在phpMyAdmin控制台中尝试了它 这是我的AJAX请求:Javascript 仅在jQueryAjax中脚本返回空白,javascript,php,jquery,mysql,ajax,Javascript,Php,Jquery,Mysql,Ajax,我有一个非常令人沮丧的问题。我向PHP文件发送AJAX请求,当我看到Chrome网络工具时,它不会返回任何JSON。但当我尝试通过Chrome中的POSTMAN工具发布相同的数据时,它返回正确。当我正常打开脚本时,它会正确返回。就在我通过AJAXm请求时,它什么也不返回 这是我的PHP文件:(我知道现在它在功能上是无用的,我需要在它能做我需要的事情之前修复这个错误) 3号线肯定有问题,因为当我把它放出来的时候,它就工作了。但函数是100%存在的,因为当我输入函数的无意义名称时,它会写一个错误。D
$("#loginForm").submit(function(e){
e.preventDefault();
$.ajax({
type: "POST",
url: "../admin/scripts/login.php",
data: $("#loginForm").serialize(),
dataType: "JSON",
success: function (vysledek){
if(vysledek.stav===1){
window.location.href("../index.php")
}
else if(vysledek.stav===2){
alertify.error('Špatné uživatelské jméno');
}
else if(vysledek.stav===3){
alertify.error('Špatné heslo');
}
},
error: function(vysledek){
alertify.error('Vyskytla se nějaká chyba');
}
});
});
我是如何写的,如果我在浏览器中打开PHP文件,它会回显{“stav”:2},当我尝试POSTman时,它会回显{“stav”:2}。但当我运行AJAX请求时,它什么也不做。我真的不知道怎么了
编辑
萤火虫:
…你能用下面的代码试试吗
$("#loginForm").submit(function(e){
e.preventDefault();
$.ajax({
type: "POST",
url: "../admin/scripts/login.php",
data: $("#loginForm").serialize(),
dataType: "JSON",
success: function (vysledek){
if( parseInt(vysledek.stav) == 1 ){
window.location.href("../index.php")
}
else if( parseInt(vysledek.stav) == 2 ){
alertify.error('Špatné uživatelské jméno');
}
else if( parseInt(vysledek.stav) == 3 ){
alertify.error('Špatné heslo');
}
},
error: function(vysledek){
alertify.error('Vyskytla se nějaká chyba');
}
});
});
退出
代码>旁边的echo$json代码>即echo$json;退出
&然后在网络选项卡中发出tryajax请求?是query\r
是自制功能吗?对于PHP
@techie_28,没有这样的函数,但仍然没有work@uzaif当点击submit时,网络选项卡中有关于RequestThank的信息,但脚本仍然并没有响应。仍然并没有响应。我认为它不可能是成功的部分,因为当我发布时,它会产生错误。它是在一个实时服务器中吗?你能分享这个网址吗。您可以通过指定完整的url ajax参数进行检查吗。URL必须是好的,因为它在没有行“$name=query_r”(“select*from username='admin'”)的情况下工作。这是一行,在AJAX中不起作用的内容。在邮递员或浏览器中,它可以工作。
<?php
$stav = 2;
$ret = array();
$name = query_r("select * from users where username = 'admin'");
$ret['stav']=$stav;
$json = json_encode($ret);
print_r($json);
?>
...
success: function (vysledek){
var vysledek = (vysledek);
if(vysledek.stav === 1){
window.location.href("../index.php")
}
$("#loginForm").submit(function(e){
e.preventDefault();
$.ajax({
type: "POST",
url: "../admin/scripts/login.php",
data: $("#loginForm").serialize(),
dataType: "JSON",
success: function (vysledek){
if( parseInt(vysledek.stav) == 1 ){
window.location.href("../index.php")
}
else if( parseInt(vysledek.stav) == 2 ){
alertify.error('Špatné uživatelské jméno');
}
else if( parseInt(vysledek.stav) == 3 ){
alertify.error('Špatné heslo');
}
},
error: function(vysledek){
alertify.error('Vyskytla se nějaká chyba');
}
});
});