<?php $this->widget('bootstrap.widgets.TbButtonGroup', array(
'type'=>'success',
'buttons'=>array(
array('label'=>'Action', 'url'=>'#'),
array('items'=>array(
array(
'label'=>'set approved',
'url'=>$this->createUrl('controller/dostuff'),
'buttonType'=>'ajaxButton',
'ajaxOptions'=>array(
'beforeSend' => 'function( request ) {
alert(request);
}'
,
'success' => 'function( data ) {
alert(data);
}'
,
),
),
array('label'=>'set blocked', 'url'=>'#', 'buttonType' => 'ajaxLink'),
array('label'=>'set pending', 'url'=>'#', 'buttonType' => 'ajaxLink'),
)),
),
)); ?>
我尝试了很多,但我不能让这个工作..我想在buttongroup的第一个按钮上使用yiis ajax行为..我甚至不会得到javascript错误或任何东西..只是如果我点击链接它重定向我到网址 - 根本没有ajax。也许你有个主意
答案 0 :(得分:0)
我在TbButton文件中看到,请参阅run()
方法:
public function run()
{
echo $this->createButton();
if ($this->hasDropdown())
{
$this->controller->widget('bootstrap.widgets.TbDropdown', array(
'encodeLabel'=>$this->encodeLabel,
'items'=>$this->items,
'htmlOptions'=>$this->dropdownOptions,
));
}
}
如果项目中包含按钮,它将是TbDropdown的实例,而不是TbButton;
因此,您尝试提供的buttonType
和ajaxOption
无用。
您可以选择其他解决方案来替换此解决方案。你可以为每个项目设置id并编写javascript来做ajax manualy。