0

最終的に、AJAX を Extbase Typo3 6 で動作させました。ただし、AJAX から返された配列を FLUID ビューで使用しようとしています。

コントローラーでの私の Ajax アクション:

public function ajaxAction(){
    $id = $this->request->getArgument['id'];
    $record = $this->articleRepository->findByUid($id);
    return json_encode(['record'=>$record,'status' => 'Loaded']);
}

私のAJAX:

function dropCall(selectFieldObj) {
    $.ajax({
        type: 'POST',
        url: link,
        dataType: 'json',
        success: function(data){
            alert(data.status);
        }
    });

}

data objectここで問題は、 View でコントローラーから送信されたアクションをどのように使用するかです。アラートが表示されています。

私の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.propertyrecord.nameタグ<h1>record.somethingelse下にあり、タグの下にある場合があります。

から送信objectscontrollerviewFLUID で使用するのと同じように、AJAX でも同じことをしたいと思います。

4

0 に答える 0