将YII ajaxButton连接到控制器以执行服务器端功能?

将YII ajaxButton连接到控制器以执行服务器端功能?,yii,Yii,我有以下按钮: <?php $this->widget('bootstrap.widgets.TbButton', array( 'label'=>'myLabel', 'buttonType'=>'ajaxButton', 'url'=>'someUrl', 'type'=>'primary', // null, 'primary', 'info', 'success', 'warning', 'danger' or 'inverse'

我有以下按钮:

<?php $this->widget('bootstrap.widgets.TbButton', array(
  'label'=>'myLabel',
  'buttonType'=>'ajaxButton', 
  'url'=>'someUrl', 
  'type'=>'primary', // null, 'primary', 'info', 'success', 'warning', 'danger' or 'inverse'
  'size'=>'small', // null, 'large', 'small' or 'mini'
  'ajaxOptions'=>array(
      'type' => 'POST',
      'beforeSend' => '
        function( request ) {
          //alert(request);
        }'
      ,
      'success' => 'function( data ) {
          //alert(data);
        }'
      ,
      'data' => array( 
        'actionName' => "INCREMENT"
      )
  ),
)); ?>

这是否意味着我必须创建一个视图、控制器和模型,以便有一个URL可以发布?没有这样的努力,难道没有更简单的方法吗

您不一定需要新视图。但是您需要一个捕获此请求的操作

在Yii中,每个动作都有一个指向它的唯一url,并且有一些函数为我们生成这样一个url。还有其他版本的
createUrl
,这里的版本来自
CController

因此,您可以将url属性修改为:

'url'=>$this->createUrl('controller-name/action-name'))
然后在控制器中添加操作:

公共函数actionName(){
//做你的服务器端工作
//也可以将一些消息返回到客户端视图
如果(成功)
回声“Y”;
否则回显“N”;
Yii::app()->end();
}

您不一定需要新视图。但是您需要一个捕获此请求的操作

在Yii中,每个动作都有一个指向它的唯一url,并且有一些函数为我们生成这样一个url。还有其他版本的
createUrl
,这里的版本来自
CController

因此,您可以将url属性修改为:

'url'=>$this->createUrl('controller-name/action-name'))
然后在控制器中添加操作:

公共函数actionName(){
//做你的服务器端工作
//也可以将一些消息返回到客户端视图
如果(成功)
回声“Y”;
否则回显“N”;
Yii::app()->end();
}

哪个视图有此按钮?哪个控制器渲染此视图?这个按钮(大致)应该做什么?编辑:这个按钮必须在一个视图中,你有没有想过它应该属于哪个视图?view=>这在main.php(frontpage)中。控制器-->站点控制器。按钮执行-->增加数据库中的字段。应该非常直截了当。第一个奖是我是否能得到在控制器中执行公共函数的按钮?我首先尝试找出如何增加值。一旦我能做到这一点,更新前端的javascript应该很容易…你已经有了一个url集,它是什么?它通向哪里?Url集?什么意思?对我来说,棘手的部分是在哪里发帖?我想发布一个URL,失败时返回“N”,成功时返回“Y”,而不显示布局的其余部分。这是否意味着我需要创建一个新的视图,或者是否有更简单的方法来执行此操作?哪个视图有此按钮?哪个控制器渲染此视图?这个按钮(大致)应该做什么?编辑:这个按钮必须在一个视图中,你有没有想过它应该属于哪个视图?view=>这在main.php(frontpage)中。控制器-->站点控制器。按钮执行-->增加数据库中的字段。应该非常直截了当。第一个奖是我是否能得到在控制器中执行公共函数的按钮?我首先尝试找出如何增加值。一旦我能做到这一点,更新前端的javascript应该很容易…你已经有了一个url集,它是什么?它通向哪里?Url集?什么意思?对我来说,棘手的部分是在哪里发帖?我想发布一个URL,失败时返回“N”,成功时返回“Y”,而不显示布局的其余部分。这是否意味着我需要创建一个新的视图,或者有更简单的方法来实现这一点?
'url'=>'someUrl'