2011-07-06 54 views
0

我有點奇怪的問題,我似乎無法解決。我試圖從我的smarty模板目錄之外的文件調用一個javascript函數,它似乎沒有工作。在我的Smarty的文件,我有:Smarty不能正確調用外部JavaScript文件?

<script type='text/javascript' src= '../functions/editConcert.js'></script> 
<form> 
<input type="button" value="Edit Info" onclick="editInfo();"> 
</form> 

而且在我editConcert.js文件,我有(用於測試目的):

function editInfo(){ 
    alert("I get here"); 
} 

我的目錄結構是這樣的:

Classes 
    -FillConcertInfo.php (this calls the smarty display function) 
Templates 
    -editConcert.tpl 
Javascript 
    -editConcert.js 

我不能爲我的生活弄清楚發生了什麼事。它在正常的php/html頁面中工作正常,但smarty似乎將它拋出了邊緣。任何幫助將非常感激。

編輯:這應該是值得指出的是,添加以下到我的智者模板工程,但我想用一個外部文件:

{literal} 
<script> 
function editInfo(){ 
    alert("I get here"); 
} 
</script> 
{/literal} 

回答

0

Smarty不會影響發送到客戶端的外部資源的加載,因爲它們是客戶端請求的。在模板中添加javascript是可行的,因爲然後定義了一個函數,在這個函數中,一個到外部資源的斷開連接將會使該函數未定義。

打開Firebug/Chrome檢查器,查看網絡信息,看看外部JavaScript頁面是否正在加載,或者最有可能的狀態是404。檢查您的目錄,並且應該解決問題。

2

我懷疑js文件沒有正確地相連,是未被發現。確保資源正在加載。如果沒有,請修復路徑。