【问题标题】:How to pass variables to Javascript in cakephp using window.app如何使用 window.app 将变量传递给 cakephp 中的 Javascript
【发布时间】:2013-12-12 09:38:48
【问题描述】:

在我的 cakephp2 应用程序中,我试图将一个变量从我的布局传递给 Javascript。

我正在使用以下代码:

$test = array('a'=>'test');
$this->Js->set('data', json_encode($test));
echo $this->Js->writeBuffer();

这会产生以下 HTML:

<script type="text/javascript">
//<![CDATA[
$(document).ready(function () {window.app = {"data":"{\"a\":\"test\"}"};});
//]]>
</script>

但是,当我尝试在我的 chrome 控制台中访问 window.app 时,我收到错误“window.app 未定义”。

任何想法我做错了什么?

【问题讨论】:

    标签: javascript variables cakephp cakephp-2.0


    【解决方案1】:

    JavaScript 变量已设置在您无法全局访问的文档上,因此将 onDomReady 设置为 false 以进行全局访问。

        $test = array('a'=>'test');
        $this->Js->set('data', json_encode($test));
        echo $this->Js->writeBuffer(array('onDomReady' => false));
    

    希望对你有所帮助。

    【讨论】:

    • 不幸的是,给出了相同的结果“window.app is undefined”。
    • 但是我不应该能够在我的 chrome/firebug 控制台中看到 window.app 吗?因为那里无法到达。
    • 我的错,它现在完美运行。 array('onDomReady' => false) 成功了。谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-07-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-11
    • 2017-04-29
    相关资源
    最近更新 更多