我會用一個例子ilustrate我的問題:包括在使用界面包含一個XHTML文件JS文件:包括
outerfile.xhtml:
<h:head>
<h:outputScript library="js" name="jquery-1.6.2.js" />
<h:outputScript library="js" name="outer.js" />
</h:head>
<h:body>
<h:panelGroup id="inner_panel">
<ui:include src="innerfile.xhtml" />
</h:panelGroup>
</h:body>
innerfile.xhtml:
<ui:composition ... >
<h:head>
<h:outputScript library="js" name="jquery-1.6.2.js" />
<h:outputScript library="js" name="inner.js" />
</h:head>
<h:body>
<h:panelGroup>
I Am Text in The Inner File!
</h:panelGroup>
</h:body>
</ui:composition>
我的問題:
- 是否可以dec按照我的方式在內部文件中添加
js
文件? - 我是否需要(而且應該)在內部文件中再次聲明通用(
jquery-1.6.2.js
)? - 如果我使用AJAX解除渲染並重新渲染
inner_panel
,會發生什麼?內置頭文件是否會重新加載?
Tnx。小跟進 - 根據你的回答,如果我加載頁面時,內部頁面沒有呈現,然後呈現內頁面,內部的js文件將會丟失。對? – Ben
我沒說過。他們將被包括在內。瀏覽器將被告知加載它們。但是,無論是從瀏覽器緩存中獲取還是從服務器獲取,都取決於JS響應中的標題,以及它是否已經存在於瀏覽器緩存中。如果它是可緩存的並存在於瀏覽器緩存中,那麼它將不會被重新加載(因爲瀏覽器已經擁有它)。否則,它確實會從服務器重新加載。 – BalusC
我明白你的意思了,我澄清了重新渲染部分。 – BalusC