【发布时间】:2011-05-19 02:53:52
【问题描述】:
我正在通过这样的 ExtJS AJAX 调用加载.php 文件:
menuItemApplication.header.on('click', function() {
Ext.Ajax.request({
url: 'content/view_application.php',
success: function(objServerResponse) {
var responseText = objServerResponse.responseText;
regionContent.update(responseText);
var scripts, scriptsFinder=/<script[^>]*>([\s\S]+)<\/script>/gi;
while(scripts=scriptsFinder.exec(responseText)) {
eval(scripts[1]);
}
}
});
});
加载的 .php 文件中的 Javascript 执行良好:
<script type="text/javascript">
regionContent.update('changed region content from within application view');
</script>
但如果 Javascript 是通过 PHP 生成的,则它不会执行:
<?php
echo "<script type=\"text/javascript\">\n";
echo "regionContent.update('changed region content from within application view')';\n";
echo "</script>\n";
?>
是的,响应是相同的,如在 Firebug Net 面板中所见,此处使用 有效的 Javascript:
这里使用 PHP 生成的 Javascript,不起作用:
如何让 PHP 生成的 Javascript 执行?
【问题讨论】:
标签: php javascript ajax extjs