让我们想象一下我有一些小部件:Widget1;
我在视图文件中调用此小部件。
<?= Widget1::widget() ?>
当您单击某个元素时,应调用该窗口小部件的新实例并执行此窗口小部件的js脚本。 在ajax调用之后我无法实现脚本执行;
答案 0 :(得分:0)
创建对控制器操作的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>