我在動態重載html文件中的區域時遇到了問題。我使用基於Ajax的方法。我成功更新了我感興趣的區域(HTML div標記),但每次執行更新時,都會將相同的JavaScript下載並與替換的html代碼一起處理,這會消耗時間。我希望瀏覽器在AJAX更新時重用上次下載的JavaScript文件,而不是一次又一次地獲取相同的內容,這會導致過多的開銷。我的意思是?假設我有一個Button Widget
,其中有widget.js
附加了JavaScript。此JavaScript將負責點擊按鈕時觸發的事件。每次單擊此按鈕時,該事件都將「拍攝」AJAX請求,並且HTML頁面上的特定區域會隨着widget.js
的下載得到更新(如有必要)。我希望widget.js
僅在第一次下載,但目前它會在每個AJAX請求中下載。我注意到每次提到的JavaScript文件都帶有隨機值附帶的查詢參數_
。Yii:如何渲染部分動態JavaScript小部件
widget.js?_=1374504824837
如何禁用此隨機參數?
我的index.php
<p>
<div id='widget-container'>
<?php
$this->renderPartial('widget');
?>
</div>
</p>
我控制器
public function actionWidget()
{
$this->renderPartial('widget',array(),false,true);
}
我widget.php
<?php
$url = 'widget';
$update = '#widget-container';
$this->widget('ext.bootstrap.widgets.TbButton',
array('label' => 'Widget',
'size' => 'medium',
'buttonType' => 'ajaxButton',
'url' => $url,
'ajaxOptions' => array('type' => 'POST',
'update' => $update,
'cache' => false),
'htmlOptions' => array('id' => 'widget'.uniqid())
)
);
?>