2013-04-09 14 views
1

我在我的網頁運行時通過調用x.php加載新數據我檢索HTML和動態生成的JavaScript。但JavaScript函數沒有運行。如何運行在.post()輸出數據接收從PHP回顯頁面的JavaScript函數

在索引頁代碼,呼叫PHP頁面:

$.post('x.php', { 
    id: num 
}, function (output) { 
    document.getElementById('view').innerHTML = output; 
}); 

樣品HTML樣品的

<div id='view2'></div> 

輸出 JS功能:

<script type="text/javascript"> 
    function a(y, s) { 
     id + y/s 
    } 

    function v(d) { 
     document.getElementById('view2').innerHTML = d; 
    } 
</script> 

如何使輸出數據中的新JavaScript函數與先前的js加載一起運行?其他功能將依賴於這個新產生的功能

+0

感謝錯誤 – 2013-04-12 14:58:39

回答

0

你返回的JavaScript需要通過任何JavaScript是存在的頁面上調用)

你可以嘗試把:

a(y,s); 
v(d); 

的功能後,在那裏宣佈。當你的js之前放「功能」這就像你在聲明一個變量:

var x; 

而且,你的IDS目前不匹配(圖VS視圖2),我懷疑可能是雖然只是一個錯字。

1

當您從Post/Get中獲取JS時,在響應中不使用js需要使用eval進行評估。 我的意思是JS是不會自動評估,因此,你需要手動執行

$.post('x.php', { 
    id: num 
}, function (output) { 
    eval(output); 
} 

輸出應爲純JS,另外,是不是我注意到,一些錯別字安全使用eval :)

+0

謝謝。我把我的輸出js從php中分離出來,並使用它的eval()工作。我會用這個,直到我想出另一個解決方案。 – 2013-04-12 15:01:05

相關問題