2012-07-03 53 views
1

我使用JS helper.so在我的cakephp應用程序中使用ajax,我不需要編寫jQuery代碼。 Js helper自動將代碼添加到我的文件中。以下是JS助手編寫代碼的路線。在cakephp中使用ajax的最佳方式是什麼?

echo $this->Js->writeBuffer(array('cache'=>true)); 

當我設置緩存的屬性,每一個在JS文件夾中創建一個新的js文件和一個新的腳本在我的代碼中加入以下方式時間的真正價值。

<script type="text/javascript" src="filename.js"></script> 

但是,當我的緩存值更改爲假,所有的JS代碼中添加一行我的文件一致。

現在我的問題是,哪種方式是通過哪種方式,快速執行頁面的最佳方式。 而我的第二個問題是,當我設置緩存的真實值時,js文件只添加一次,現在當頁面重新加載或刷新時,js helper一次又一次地添加js文件。

回答

0

爲了記錄這個問題本來可能措辭更好。

第一個問題,執行速度:爲每一個JS保存一個新文件可能不是要走的路。希望下面的代碼應該解釋一個更好的方法,並使您的第二個問題沒有意義。

// In /app/View/Layouts/default.ctp 
... 
<head> 
... 
    <?php echo $this->fetch('script'); ?> 
... 
</head> 
<body> 
... 
    <?php echo $this->Js->writeBuffer(); 
... 
</body> 

一旦這項工作到位,你可以添加一個腳本文件到您的意見或佈局與

<?php echo $this->Html->script('scriptname', array('inline'=>false)); ?>

(注意沒有.js擴展)

或者添加自定義JS:

<?php 
    $customJs = "alert('Hi!');"; 
    echo $this->Html->scriptBlock($customJs, array('inline'=>false)); 
?> 

希望有幫助。

相關問題