2012-08-06 60 views
0

我有一個鏈接調用特定的ajax動作,並返回它在屏幕上始終更新div內部的部分視圖。使用此工作正常,但是當我使用CHTML類中使用靜態函數像下面PHP yii如何調用ajax渲染部分使用chtml類?

 <?php echo CHTML::linkButton("Like",array("href"=>"http://www.aa.com","id"=>"link-button-shrinked"))?> 

然後Ajax調用不能正常工作,並給出奇怪的錯誤

 <h1>PHP Error [2]</h1> 
     <p>YiiBase::include(CHTML.php) [<a href='yiibase.include'>yiibase.include</a>]: failed to open stream: No such file or directory (C:\AppServ\www\abc.com\framework\YiiBase.php:418)</p> 

我的呈現視圖功能是這樣

$this->renderPartial('_character_actions',array("actionRecords"=>$actionRecords),false,true); 

如果我刪除了CHTML函數調用,那麼一切工作正常....請幫助我。

回答

1

您得到的類名錯誤。

只需將CHTML更改爲CHtml,您應該會很好。

+0

起初我以爲你一定是在開玩笑,因爲它通過控制器工作正常,所以我認爲它沒有關係有Chtml或CHTML。但改變文本到CHtml真的爲ajax工作...非常感謝,雖然我沒有得到這個背後的邏輯,但它的工作很好.. – wolvorinePk 2012-08-06 23:59:19

+0

你只是類名錯誤,這是所有沒有真正的邏輯:) ..編輯答案是:D – 2012-08-07 01:44:32

+0

對,但即使類錯誤,它也不應該在沒有Ajax調用的情況下在第一個地方工作。我的意思是我在另一個視圖中使用了renderpartial的相同視圖,並且它工作正常,所以我不認爲它與類名相關。當我通過ajax函數渲染時,問題出現了。但無論如何,仍然這個邏輯我不明白:) – wolvorinePk 2012-08-07 10:41:17