Yii2:将变量从控制器传递到javascript
我正在为我的项目使用Yii2框架。 我的控制器中有一个循环,这是代码 detailController.php: 我使用此脚本在视图中显示进度条。php,进度条的宽度(我在此处将注释标记设置为Yii2:将变量从控制器传递到javascript,javascript,php,ajax,yii2,real-time,Javascript,Php,Ajax,Yii2,Real Time,我正在为我的项目使用Yii2框架。 我的控制器中有一个循环,这是代码 detailController.php: 我使用此脚本在视图中显示进度条。php,进度条的宽度(我在此处将注释标记设置为)取决于从控制器传递到此脚本的$percent 那么,如何在执行操作期间实时从PHP Javascript传递变量呢? 你知道怎么解决这个问题吗? 谢谢:) 我希望这对您有用。在这种情况下,您应该在返回数组中传递正确的值,然后在视图中管理正确的使用 假设您需要的值在$PercentVaR中 在控制器中
)取决于从控制器传递到此脚本的$percent
那么,如何在执行操作期间实时从PHP Javascript传递变量呢?
你知道怎么解决这个问题吗?
谢谢:)
我希望这对您有用。在这种情况下,您应该在返回数组中传递正确的值,然后在视图中管理正确的使用
假设您需要的值在$PercentVaR中 在控制器中
return $this->render('index', [
'searchModel' => $searchModel,
'dataProvider' => $dataProvider,
'userId' => $userId,
'percent' => $percent
]);
在您看来,您可以检查正确使用
.......
<?php
if ( $percent > 0) {
echo "<div>". $percent . "</div>";
}
?>
.....
。。。。。。。
.....
在您的代码中,我看不出您是如何获得$dataProvider的,以及与循环中的值和dataProvider存在哪些关系。。请解释better@scaisEdge,很抱歉,我忘了添加通知作为注释一些代码。我没有添加代码,因为它包含30多行代码。我应该添加代码吗?谢谢添加代码,这样我就可以look@scaisEdge我已经更新了代码,请检查问题。谢谢,但我认为如果我使用render发送数据,它将中断操作执行。很抱歉,我已经在第一次编辑中更新了标题,我想将数据传递给javascript。您如何看待ajax?有人告诉我使用ajax来实时发送数据,我尝试了一些代码,但没有成功。要将数据传递到javascript而不是渲染,可以使用返回(或na echo),但这些都是在操作结束时发送的。希望是明确的,否则让我知道你的怀疑谢谢你的学习。如果我使用return,它不会中断操作吗?是的,如果使用return,则结束操作。如果您需要客户端和服务器之间的ciclic通信(javascript到php),您应该使用例如:分离(快速)操作。。由ajavx调用,仅用于了解流程的进展情况。单独的操作?我们如何使用ajax从控制器获得动作的推进?
if ($percent) {
return $this->render('index', [
'searchModel' => $searchModel,
'dataProvider' => $dataProvider,
'userId' => $userId,
'percent' => $percent
]);
}
return $this->render('index', [
'searchModel' => $searchModel,
'dataProvider' => $dataProvider,
'userId' => $userId,
]);
return $this->render('index', [
'searchModel' => $searchModel,
'dataProvider' => $dataProvider,
'userId' => $userId,
'percent' => $percent
]);
.......
<?php
if ( $percent > 0) {
echo "<div>". $percent . "</div>";
}
?>
.....