TYPO3 extbase - 流体变量到jquery

net*_*ase 2 jquery typo3 fluid extbase

怎样才能将流体变量从控制器传递给jQuery或JavaScript?

我的控制器里面:

public function tabs () {
    $this->view->assign('tab', 1);
}
Run Code Online (Sandbox Code Playgroud)

内部流体我将变量用作{tab}但是如何传递给JavaScript?任何帮助,将不胜感激...

小智 5

如果您需要像f:这样的流体标签,因为您可以使用CDATA(流体变量也可以工作).例如

    <script type="text/javascript"><![CDATA[
            function initialize() {
                    var marker = [];
                    var LatLng;
                    var queryLatlng = new google.maps.LatLng(]]>{queryLat}, {queryLng}<![CDATA[);
                    var mapOptions = {
                            center: queryLatlng,
                            zoom: 8,
                            mapTypeId: google.maps.MapTypeId.ROADMAP
                    };
                    var map = new google.maps.Map(document.getElementById("tx_gmapplus-map"),mapOptions);

                    marker['0'] = new google.maps.Marker({
                            position: queryLatlng,
                            map: map,
                            title: "Standort"
                    });
                    ]]><f:for each="{addresses}" as="address" iteration="it"><![CDATA[
                            latlng = new google.maps.LatLng(]]>{address.txGmapplusLatitude}, {address.txGmapplusLongitude}<![CDATA[);
                            ]]>marker['{it.cycle}']<![CDATA[ = new google.maps.Marker({
                                    position: latlng,
                                    map: map,
                                    title: ]]>"{address.name}"<![CDATA[
                            });
                            ]]></f:for><![CDATA[
            }
]]></script>
Run Code Online (Sandbox Code Playgroud)

编写起来并不是很舒服,但它有效并且您具有Fluid逻辑的优势.


Dan*_*iel 5

我通常为此使用数据属性。所以在 Fluid 中你有这样的东西:

<div data-tab="{tab}"></div>
Run Code Online (Sandbox Code Playgroud)

在 JavaScript 中,您可以通过以下方式访问此属性:

jQuery('div').data('tab');
Run Code Online (Sandbox Code Playgroud)

当然,您可以使用任何 HTML 元素来实现此目的。