2

我有多个带有 ajax 调用的 javascript 函数。起初我把它们放在这样的视图文件中

<?php

 Yii::app()->clientScript->registerScript(
    "test",
    "function test() {
        jQuery.ajax({
          type: 'POST',
          data: 'id=120',
          url: '".CController::createUrl('person/getname')."',
            success: function(name){
               alert( name);
        }
          });
      };
  ",
CClientScript::POS_READY
);

...

?>

它可以工作,但我有很多这样的功能,所以我想把它们放在视图之外的其他文件中。我可以把它放在javascript文件中,

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

但我不能使用CController::createUrl('person/getname')来获取网址。

最好的方法是什么?

4

1 回答 1

2

您不能CController::createUrl('person/getname')在脚本文件中使用,因为它的 php.ini 文件。如果要在脚本文件中使用 url,则必须通过分配给变量来传递它。使用registerScript()方法从php声明变量

于 2013-07-10T10:14:00.427 回答