ajax在php页面上获得一个值的结果

时间:2013-11-21 13:16:17

标签: php jquery ajax

这将只返回一行如何简单地将该行传递给ajax调用。 下面的代码传递数据,但是当我在循环中打印它时,它会打印无限次。

AJAX ::

$.ajax({
  type: "POST",
  url: 'userLoginCheckforRetrieve.php',
  data: {
  },
   success:function(data)   { 
   alert('outside loop is '+data);
 for(var i=0; i < data.length ; i++){
    alert('loop date is '+data[i].name);
    }
}
});

PHP ::

$sel_query= "SELECT image_name FROM save_designs WHERE user_name='{$username}'";
    $sel_result = mysql_query($sel_query);

    $data = array();
    while($item = mysql_fetch_object($sel_result))
        {
            $data[] = array(
                'name' => $item->image_name                
            );
        }
    echo json_encode($data);

2 个答案:

答案 0 :(得分:0)

使用JSON.parse将字符串解析为JSON。试试这个:

$.ajax({
  type: "POST",
 url: 'userLoginCheckforRetrieve.php',
 data: {}, //Pass data here
 success:function(data)   { 
     var obj = JSON.parse(data); // parse a string as JSON
    alert('outside loop is '+data);
    for(var i=0; i < obj.length ; i++){
      alert('loop date is '+obj[i].name);
    }
  }
});

答案 1 :(得分:0)

你应该添加一个JSON解析器来转换它......

$.ajax({
       type: "POST",
       url: 'userLoginCheckforRetrieve.php',
       data: {},
       success:function(data)   { 
         data = $.parseJSON(data);
         for(var i=0; i < data.length; i++){
         alert('loop date is '+data[i].name);
       }}
});

返回的json是一个字符串,因此通过解析它,您将创建一个包含的对象  所有json字符串元素及其值。

注意:确保您的php文件没有打印的警告,并且返回的页面是干净的JSON字符串=&gt; {....}

玩得开心!