我在主index.html文件中定義了Javascript函數。
此頁面的一部分使用Ajax進行更新(使用prototype.js)。嘗試在返回的AJAX代碼中執行主文件中定義的Javasript函數失敗。
evalScripts:Ajax.Updater中的true選項prototype.js函數沒有幫助。
我該如何解決這個問題?先謝謝你。如何在Ajax響應中執行在主窗口中定義的Javascript函數
這是我的index.html文件:
<html>
<head>
<script src="js/lib/prototype.js" type="text/javascript"></script>
<script type="text/javascript">
function foo(x) {
alert(x);
}
function loadContent() {
new Ajax.Updater('responseArea', 'response.php' , { evalScripts: true });
}
</script>
</head>
<body>
<div id="main">
<span style="cursor: pointer" onclick="loadContent();">Click on me to call Ajax response</span><br>
<br></br>
</div>
<div id="responseArea">
This will be replaced with Ajax response
</div>
</body>
</html>
This is response.php:
<?php
echo '<span style="cursor: pointer" onclick="foo("foo Called from within Ajax response");">
Click on me to call foo from within Ajax response</span>';
?>
你需要在你的回聲中轉義那些雙引號 – jbabey