我终于让我的 AJAX 在 Extbase Typo3 6 中工作。但是,我试图在我的 FLUID 视图中使用从 AJAX 返回的数组。
我在控制器中的 Ajax 操作:
public function ajaxAction(){
$id = $this->request->getArgument['id'];
$record = $this->articleRepository->findByUid($id);
return json_encode(['record'=>$record,'status' => 'Loaded']);
}
我的阿贾克斯:
function dropCall(selectFieldObj) {
$.ajax({
type: 'POST',
url: link,
dataType: 'json',
success: function(data){
alert(data.status);
}
});
}
现在的问题是如何data object
在我的视图中使用从控制器操作发送的?正在显示警报。
我的List.html
看法
<script type="text/javascript">
var link
= '<f:uri.action action="ajax" controller="Article" pageType="99" arguments="{data:1}"/>';
</script>
<script type="text/javascript" src="fileadmin/myScript.js"></script>
<select id="drop" onchange="dropCall(this)">
<option value="1">Apple</option>
<option value="2">Mango</option>
<option value="3">Grape</option>
</select>
在我看来,我应该能够做类似的事情
<h1> {record.name} </h1>
编辑
该对象record
可能包含许多属性,并且每个属性都record.property
将record.name
在<h1>
标签下,并且record.somethingelse
可以在某些标签下。
就像我们在 FLUID 中发送objects
和controller
使用view
它们一样,我想对 AJAX 做同样的事情