如何在Typo3後臺使用ajax調用我自己的擴展的控制器功能?Ajax調用TYPO3控制器功能
我想對我的存儲庫進行搜索。
例如:
我有一個輸入字段,我可以輸入名稱。然後,搜索功能應該在我的存儲庫中搜索這個名稱。
我的問題是如何設置ajax調用與控制器函數進行通信?
如何在Typo3後臺使用ajax調用我自己的擴展的控制器功能?Ajax調用TYPO3控制器功能
我想對我的存儲庫進行搜索。
例如:
我有一個輸入字段,我可以輸入名稱。然後,搜索功能應該在我的存儲庫中搜索這個名稱。
我的問題是如何設置ajax調用與控制器函數進行通信?
在後端模塊很簡單,只需在您的控制器註冊新的行動,即:nameAutocomplete
(不要忘記添加到您的ext_tables.php允許的操作的列表中選擇此)
這樣你就可以創建適當的URL與視圖助手:
<script>
var MY_AJAX_ACTION_URL = '<f:uri.action action="nameAutocomplete" />';
jQuery.ajax({
type: 'POST',
url: MY_AJAX_ACTION_URL
});
</script>
樣品行動是相當直接也就是說,如果你需要JSON輸出,可以直接做到這一點:
public function nameAutocompleteAction() {
$out = array('status' => 'I am alive');
// Process your POSt data here
header('Content-Type: application/json');
return json_encode($out);
}
注意:您需要使用viewhelper在創建時創建正確的URL,即模塊的標記和其他特定部分。
究竟哪個部分有問題? – biesior
的URL看起來應該像 '$阿賈克斯({ 類型: 「POST」, 網址:網址, 數據:數據, 成功:成功, 的dataType:數據類型 });' – Felix