2011-07-04 59 views
1

我需要一些關於ajax回調的幫助。我試圖通過某些參數AJAX被稱爲後傳遞迴調參數ajax post

 var dataString = 'string=' + string; 
     $.ajax({ 
      type: "POST", 
      url: "file.php", 
      data: dataString, 
      success: function(data){ 

       $(".selector").html(data) 

     } 
     }); 

好了,所以如果我的file.php有一些MySQL的查詢,我想呼應出值

echo $picture; 
echo $title; 
echo $additional_values; 

我如何回聲出一定的價值,並使之通過AJAX

所以,如果我在PHP文件呼應出來,(數據),這將輸出到一切$(".selector").html(data)<div class="selector"></div>),但是,我將它輸出通過我的AJAX功能試圖一次輸出一件東西

success: function(data){ 
    $(".picture").html(data); // echo's out picture in my picture div class 
    $(".title").html(data); // echo's out title in my title div class 
    $(".additional_values").html(data); // echo's out to the div class... 
} 

如果有人能對我發光,那會很棒!

謝謝!

回答

4

PHP

$data = array('picture'=>$picture, 
       'title'=>$title, 
       'values'=>$additional_values, 
      ); 

print json_encode($data); 

的JavaScript

var dataString = 'string=' + string; 
    $.ajax({ 
     type: "POST", 
     url: "file.php", 
     data: dataString, 
     datatype: 'json', 
     success: function(data){ 
      $(".picture").html(data.picture); 
      $(".title").html(data.title); 
      $(".additional_values").html(data.values); 

     } 
    }); 
+1

您可能還需要將$ .ajax數據類型更改爲json – Daff

+0

@Daff好點錯過了 – PeeHaa

+0

@Downvoter:請您告訴我的答案有什麼問題嗎?謝謝! – PeeHaa

1

您可以使用JSON。 JSON是一種序列化格式,允許您「轉換」一個對象來將字符串轉換爲對象。 PHP有一個內置的功能編碼爲JSON字符串,稱爲json_encode

PHP代碼

file.php 
<?php 
//... Your logic here 
header("Content-type: application/json"); //'Tell' the browser that it's a JSON response 
$returnData = array('picture'=>$picture, 'title'=>$title, 'values'=>$additional_values); 
echo json_encode($returnData); //Encode $returnData to JSON string 
?> 

現在,jQuery的可以接收這個字符串,它會自動轉換爲JavaScript對象。我們在data參數對象

的JavaScript

var dataString = 'string=' + string; 
$.ajax({ 
    type: "POST", 
    url: "file.php", 
    data: dataString, 
    success: function(data){ 
     //At this point, data is just as php's $returnData, so it has 3 properties 
     //picture, title and values. 
     $(".picture").html(data.picture); 
     $(".title").html(data.title); 
     $(".additional_values").html(data.values); 
    } 
}); 

JSON在許多語言版本,並在AJAX事實上的交換格式。有關http://json.org的更多信息。

希望這會有所幫助。歡呼聲