我想在本地實現一個簡單的AJAX函數,它允許我在用戶鍵入時自動完成已有節點的節點標題。爲此,我需要有能夠在節點標題上搜索的API。問題是,當我輸出原始JSON時,它被標籤包圍。所以,無論我做什麼,我不斷收到...如何使用Drupal返回實際的JSON?
<html>
<head>
</head>
<body>
<pre style="word-wrap: break-word; white-space: pre-wrap;"> {json here}</pre>
</body>
</html>
我試圖實現自定義的頁面模板,只有已經輸出的內容,所產生相同的結果。這是我目前如何做到這一點,在我的模塊文件...
<?php
/**
* Implementation of hook_menu()
*/
function content_relation_menu() {
$items = array();
$items['api'] = array(
'title' => 'Search',
'page callback' => 'content_relation_get',
'access callback' => TRUE,
'type' => MENU_CALLBACK,
);
return $items;
}
function content_relation_get($term = '') {
drupal_add_http_header('Content-Type', 'application/javascript; utf-8');
$var = json_encode(
db_query("SELECT nid,title FROM {node} WHERE title LIKE :title LIMIT 5", array(":title" => $term.'%'))->fetchAll()
);
echo $var;
exit(0);
}
如何返回JUST原始JSON?
這種方式「更正確」,但事實證明,這確實輸出了原始JS。謝謝你。 – rybosome
你打敗了我,我剛剛更新了我的答案:) – Clive