我有這樣的代碼:奇怪CakePHP的佈局問題(阿賈克斯)
// controller
function contact($token) {
$this->layout = 'ajax';
}
// contact element
<some html, no php>
// contact view html + javascript
<script type=".....">
....
$.post(
$(this).attr("href"),
null,
function(data){
$(data).appendTo($(".contact_store_link").parent()).fadeIn();
}
);
</script>
<!-- the relevant html -->
<dd><a class="contact_store_link" href="/stores/contact">link title</a></dd>
的問題是,無論$this->layout = 'ajax';
指令,返回的佈局是在appController.beforeFilter()
功能設置默認佈局。
事情是,除了佈局,其餘的代碼工作得很好。正確的控制器+動作+傳遞參數。元素和視圖也可以正常工作,並且返回的數據包含處理後的數據,只是佈局錯誤。
清除tmp文件夾沒有幫助。 我也驗證了ajax佈局是應該的(並且在另一個controller.action +視圖集中工作)。
?
有人嗎?請? – yossi 2012-02-28 23:50:18