0

我正在尝试将变量数组传递给 CakePHP 2.3 中的 Javascript,但无法使其正常工作。我希望有人对此有一个很好的解决方案。

通过在控制器中放置以下内容,我已成功地将数组传递给我的视图:

$this->set(compact('myArray'));

并在我看来尝试将变量传递给 myJs.js。

$this->Js->set('myArray');
$this->Html->script('myJs');

为什么我无法访问 myJs.js 中的 myArray?

4

2 回答 2

4

使用 Js helper 的方法将变量传递给 javascript

set只需使用的方法设置您要设置的变量js helper

$this->Js->set('myArray', $myArray);
echo $this->Js->writeBuffer(array('onDomReady' => false));

您可以将$myArray变量作为window.app.myArray您的 javascript 访问。

于 2013-11-08T10:16:34.463 回答
1
echo $this->Html->scriptBlock(
    "var myArray = '" . json_encode($myArray) . "'",
    array('inline' => true)
    );
echo $this->Html->script('myJs');
于 2013-11-08T08:20:19.950 回答