gpt4 book ai didi

php - 为什么 PHP 生成的 Javascript 不能在通过 AJAX 加载的文件中工作?

转载 作者:行者123 更新时间:2023-11-29 16:27:42 25 4
gpt4 key购买 nike

我正在通过 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,有效:

alt text

这里使用 PHP 生成的 Javascript,它不起作用:

alt text

如何让 PHP 生成的 Javascript 执行?

最佳答案

这些响应并不相同。检查 ';相对 ;在最后。

<?php
echo "<script type=\"text/javascript\">\n";
echo "regionContent.update('changed region content from within application view')';\n";
echo "</script>\n";
?>

对比

<?php
echo "<script type=\"text/javascript\">\n";
echo "regionContent.update('changed region content from within application view');\n";
echo "</script>\n";
?>

关于php - 为什么 PHP 生成的 Javascript 不能在通过 AJAX 加载的文件中工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4335142/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com