2014-10-16 86 views
0

您好我想要使用一个外部JS,在和我使用Yii的clienScriptYii的registerScript:添加PHP参数的JavaScript

Yii::app()->clientScript->registerScriptFile(Yii::app()->baseUrl.'/js/some.js'); 

的问题是,在我的外部JS文件, 我需要通过一个网址,为我的ajax调用。而网址是在PHP,因为我使用的createAbsoluteUrl()如下:

$url = Yii::app()->createAbsoluteUrl("/module/controller/action") 

如何通过$网址JavaScript变数some.js使用?谢谢!

回答

1

您可以在PHP代码的末尾创建一个JS对象。

... 
    ... 
    $url = Yii::app()->createAbsoluteUrl("/module/controller/action"); 
    ... 
    Yii::app()->clientScript->registerScriptFile(Yii::app()->baseUrl.'/js/some.js'); 
    <script> 
    var WRAPPER = (WRAPPER || {}); 
    WRAPPER.url = "<?= $url ?>"; 
    </script> 

然后JavaScript文件some.js应该能够以此为:

var url = WRAPPER.url; 

我这样做对笨 - 我假设Yii的工作原理类似。