簡體   English   中英

如何在yii控制器動作中使用Javascript / jquery代碼?

[英]How to use Javascript/jquery code inside a yii controller action?

我想在重復的時間間隔中在yii項目中的APIController中調用一個javascript函數。

 public function actionMytimer() {
    Yii::app()->clientScript->registerCoreScript('jquery');
    Yii::app()->clientScript->registerCoreScript('jquery.ui');
    $hello = setInterval(test,1000);
    function test(){
        echo 'hellooo interval';
    }  
}

對我來說,在特定時間間隔內運行“測試”方法是非常必要的。是否可以? 請幫助。謝謝advnc。 這是當前的警告消息:

Fatal error: Call to undefined function setInterval() in /Library/WebServer/Documents/MediaPult/protected/controllers/APIController.php on line 449

如果您可以更清楚地說明問題,那么人們會更容易提供一個好的解決方案。

據我了解,您希望能夠在服務器端重復執行一個方法。 為此,您應該輸出執行此操作的JavaScript代碼。 會是這樣的:

<script>
setInterval(function(){
    $.get(<?= Yii::app()->request->baseUrl ?>/actionName");
}, 1000);
</script>

您不能像那樣從php代碼執行javascript函數。 您可以嘗試類似:

function actionTest(){
  $cs = Yii::app()->clientScript;
  $cs->registerScript('my_script', 'setInterval(test,1000);', CClientScript::POS_READY);
  $this->render('any_view');
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM