2011-06-30 25 views
0

在我的网站中,我有一个iframe,其中包含一个Chtml :: ajaxButton。我发现很多关于这个问题的帖子,但找不到解决方案。在IFrame中使用ajax

我认为重要的是要强调的是,这个iframe没有被用来发送数据到一个不同于主机页面的域。

view.php

 <div style="height: 385px; width: 350px; overflow: hidden"> 
      <?php $url = "displayMessages?league_id=".$model->id; ?> 
      <iframe src="<?php print $url?>" width="350" height="385"> 
      </iframe> 
     </div> 

LeaguesController.php

public function actionDisplayMessages() 
{ 
    if(isset($_GET['league_id'])){ 
     $selectedLeague = $_GET['league_id']; 
     $league = LigasDeAmigos::model()->findByPk((int)$selectedLeague); 
     $user = (int)Yii::app()->user->id; 
     $this->renderPartial('leagueWallMessages', array(
                'model'=>$league, 
                'messages'=>$league->messages, 
                'user'=>$user, 
     )); 
    }  
} 

LeagueWallMessages.php

<?php 
    echo CHtml::ajaxButton(
     "Compartir", CController::createUrl('leagues/insertComment', 
    array(
     'league_id'=>$model->id)), 
     array(
      'success' => "js: function(){ alert('Success!!'); }", 
      'type' => 'post', 
     ), 
     array(
      'id'=>'idButtonShare', 
      'style'=>'width:70px;height:40px; align:right;' 
     ) 
    ); 
?> 

在LeagueWallMessages.php中的这个按钮,点击后,不会触发任何操作。什么可能导致这个问题?

回答

1

原来我忘记了在表单定义中使用按钮。我将按钮和其他内容放置在一个表格中,并更改了ajaxSubmitButton的按钮。