我认为我可以通过执行以下操作来达到一个数组:
$model->stabilimenti;
现在在同一视图中,在registerJS中,我试图将此数组保存为Javascript数组,所以我可以添加一些客户端检查。
<?php
$this->registerJs(<<<JS
jQuery(document).ready(function(){
let jsArray = [];
jsArray = $model->stabilimenti;
JS
);
对于非数组变量,这种方法有效。
我也尝试使用此表示法,但没有成功。
let jsArray = <?php echo json_encode($model->stabilimenti); ?>;
这是合法行动吗?
如果不是在此处粘贴代码的错字,则缺少})
函数的右花括号和括号.ready(function(){
。
您应该使用数组yii\helpers\JSON
上的json_encode
或$model->stabilimenti
将php数组解析为javascript,然后将其转换为json,然后将其分配给javascript变量。并尝试在注册脚本时使用\yii\web\View::POS_READY
在DOM就绪时加载代码。
并且您应该将代码彼此分开。参见下面的代码,它应该可以正常工作
<?php
$stabilimenti = \yii\helpers\Json::encode($model->stabilimenti);
$js = <<<JS
jQuery(document).ready(function(){
let jsArray = {$stabilimenti};
});
JS;
$this->registerJs($js, \yii\web\View::POS_READY);