如何在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