如何在Prestashop 1.6中将变量从smarty传递到javascript

时间:2017-11-06 15:23:20

标签: javascript jquery prestashop

我想将变量添加到smarty中,然后在javascipt中读取值。在header.tpl中,我有:

function setVarHeaders() {
            varHeaders = 0;
            lang = "{$cart->id_lang}";
        }

        </script>
    </head> 

在我的global.js中:

$(document).ready(function(){   

    $('#HOOK_PAYMENT').each(function (index, element) {
        var html = '';

        html += '<div id="value">' + lang +'</div>';
        $(element).html(html);        
    }); 
});

问题出在哪里?谢谢你的帮助。

1 个答案:

答案 0 :(得分:0)

从可用代码中可以看出,您没有调用setVarHeaders函数,因此永远不会设置变量。你可以在它定义的地方调用它:

        function setVarHeaders() {
            varHeaders = 0;
            lang = "{$cart->id_lang}";
        }

        setVarHeaders();

        </script>
    </head> 

或使用这些变量的地方:

$(document).ready(function(){   

    setVarHeaders();

    $('#HOOK_PAYMENT').each(function (index, element) {
        var html = '';

        html += '<div id="value">' + lang +'</div>';
        $(element).html(html);        
    }); 
});