2013-01-18 69 views
0

我有這個問題,有沒有什麼合理的方法可以在某個XHR請求中以某種方式返回兩種類型的數據?例如,我想用一些數據返回一個html,除了一些JSON或純文本的變量。爲javascript ajax響應添加不同的數據類型

在這種情況下,我正在處理ajax分頁,有一個返回html與下一個結果的請求,但我也需要一個整數與從服務器返回的結果總數。

我看到兩個選項:

  • 再拍XHR請求剛剛從服務器獲取總數
  • 把裏面的數據的HTML一些屬性

但兩者的這些方法似乎不優雅。

任何想法或許該如何實現?

+0

爲什麼不插入你的HTML成JSON? – Damask

+1

只需將整數和HTML字符串粘貼到數組中,然後json對該數組進行編碼,然後將其發送給客戶端,然後根據需要使用它。 – adeneo

回答

1

返回一個JSON編碼數組。

$return = array(
    'html' => '<div><!-- insert a lot of html here --></div>', 
    'productId' => 3, 
    'someArray' => array(1, 2, 3, 'string') 
); 
echo json_encode($return); 

然後在javascript:

obj = JSON.parse(data); // data is return from the ajax request.