Yii:javascript 的参数化调用 - 引号问题
Yii: parametrized call of javascript - problems with quotes
我正在使用 Yii 版本 1.1.15。
在一个视图中,我使用了 ajaxlink,它的工作原理非常棒:
<?=
CHtml::ajaxLink(
'[Help]',
$this->createUrl('genearal/help'),
array(
'onclick' => '$("#help").dialog("open"); return false;',
'update' => '#help'),
array('id' => 'showHelp')
);
?>
<div id="help"></div>
由于我有很多 ajaxlink 调用,我想在 components-folder 中编写一个函数,我可以调用它:
MyComponents::help("Help", "general/help", "help", "showHelp");
class MyComponents {
public static function help($headline, $controller_and_action, $divname, $idname) {
CHtml::ajaxLink(
'[$headline]',
$this->createUrl('$controller_and_action'),
array(
'onclick' => '$("$divname").dialog("open"); return false;',
'update' => '$divname'),
array('id' => '$idname')
);
}
}
问题:如果我在浏览器中调用它,我只会得到一个空页面。
我必须用父类扩展 MyComponents 吗?哪个? (我不这么认为:我测试了 echo CHtml::encode("test") 没有问题。
也许我的引述有问题?
我用谷歌搜索了几个小时然后放弃了。希望不是不可能。
我解决了这个问题。这很简单。
我没有收到错误消息,因此认为 javascript.
出了点问题
在我的控制器中,我不在对象上下文中 - 所以 $this->createUrl(...) 是不可能的。解决方案:
Yii::app()->createUrl(...)
...而且效果很好 ;-)
我正在使用 Yii 版本 1.1.15。
在一个视图中,我使用了 ajaxlink,它的工作原理非常棒:
<?=
CHtml::ajaxLink(
'[Help]',
$this->createUrl('genearal/help'),
array(
'onclick' => '$("#help").dialog("open"); return false;',
'update' => '#help'),
array('id' => 'showHelp')
);
?>
<div id="help"></div>
由于我有很多 ajaxlink 调用,我想在 components-folder 中编写一个函数,我可以调用它: MyComponents::help("Help", "general/help", "help", "showHelp");
class MyComponents {
public static function help($headline, $controller_and_action, $divname, $idname) {
CHtml::ajaxLink(
'[$headline]',
$this->createUrl('$controller_and_action'),
array(
'onclick' => '$("$divname").dialog("open"); return false;',
'update' => '$divname'),
array('id' => '$idname')
);
}
}
问题:如果我在浏览器中调用它,我只会得到一个空页面。
我必须用父类扩展 MyComponents 吗?哪个? (我不这么认为:我测试了 echo CHtml::encode("test") 没有问题。
也许我的引述有问题?
我用谷歌搜索了几个小时然后放弃了。希望不是不可能。
我解决了这个问题。这很简单。 我没有收到错误消息,因此认为 javascript.
出了点问题在我的控制器中,我不在对象上下文中 - 所以 $this->createUrl(...) 是不可能的。解决方案:
Yii::app()->createUrl(...)
...而且效果很好 ;-)