2014-02-20 84 views
-1

我需要帮助来写这个没有async: false,Rewite ajax请求和返回的值

var imageX; 
var groupX; 
$.ajax({ 
    type:'GET', 
    url:'php/myphp.php', 
    dataType:'json', 
    async: false, 

    success: function(response){ 
      imageX = response[0].studentName, 
    groupX = response[0].subjectId; 
      alertImageX(); 
      } 
}); 
function alertImageX() { 
(function() { 
    var image = { 
     'back': { 'url':imageX, 'img':null }, 
     'front': { 'url':'img/bg.jpg', 'img':null } 
    }; 

PHP

$query = $db->prepare('SELECT studentName, subjectId FROM grade3 WHERE eligible = ? LIMIT 1'); 
$array = array('Yes'); 
$query->execute($array); 
$result = $query->fetchAll(PDO::FETCH_ASSOC); 
    echo json_encode($result); 
+0

期望的结果是什么? – Chitowns24

+0

我希望能够获得由AJAX调用返回的数据(即:imageX)。并避免'async:false',因为这是不好的习惯。 – NathaliaZeed

+0

在成功响应数据的地方,我们可以看到PHP代码以及AJAX代码吗? – Chitowns24

回答

1

"async: false"应该没有必要在这种情况下,因为你的反应已经处理完AJAX请求完成,因为它被放置在“成功”元素中。很抱歉,如果我错过任何一个细节

编辑:

对不起,我刚才读关于你想达到你的评论。 变量包含AJAX呼叫的脚本(在PHP脚本的情况下),因此基本上需要回显您希望脚本返回的内容并通过response变量访问该脚本。

+0

换句话说,你的代码应该按原样工作,不需要async:false。 –

+0

但是,当我删除'async:false'代码不起作用。 – NathaliaZeed

+0

@NathaliaZeed将你的逻辑转移到'success'处理程序 – Johan