Javascript registerJS-Yii2中的数组到字符串转换
在我看来,我有一个数组,我可以通过执行以下操作来访问它:Javascript registerJS-Yii2中的数组到字符串转换,javascript,php,arrays,yii2,data-conversion,Javascript,Php,Arrays,Yii2,Data Conversion,在我看来,我有一个数组,我可以通过执行以下操作来访问它: $model->stabilimenti; 现在在同一个视图中,在registerJS中,我试图将该数组保存在Javascript数组中,以便添加一些客户端检查 <?php $this->registerJs(<<<JS jQuery(document).ready(function(){ let jsArray = []; jsArray = $model->stab
$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); ?>;
这是一个lecit操作吗?您缺少.readyfunction{函数的右括号和圆括号},如果这不是一个错误,请将代码粘贴到此处 您应该使用数组$model->stabilementi上的yii\helpers\JSON或JSON_encode将php数组解析为驻留在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);
这回答了你的问题吗?