繁体   English   中英

yii2:动态调用小部件

[英]yii2: Dynamically call widget

让我们想象一下我有一些小部件:Widget1;

我在视图文件中调用此小部件。

<?= Widget1::widget() ?>

当您单击某个元素时,应调用该窗口小部件的新实例并执行此窗口小部件的js脚本。 在ajax调用之后我无法实现脚本执行;

创建一个对控制器操作的ajax调用,您将在其中实例化窗口小部件和/或调用它的javascript返回函数。 像这样:

//@app/widget/Widget1
class Widget1 extends \yii\base\Widget
{
    public function run()
    {
        echo new JsExpression('function(){ alert("hello,world") }');
    }
}

//@app/controllers/SomeController
public function actionSomeaction()
{
    return Widget1::widget();
}

然后从处理onClick事件的ajax函数调用它(jquery中的示例):

<script>
    $.post('/some/someaction',function(response){
        response();
    });
</script>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM