我正在做一个Ajax项目。如果我们可以从 php 脚本运行 javascript 函数,可以实现许多函数,如下所示:
<?php
if(isset($_REQUEST['change-div))
{
echo'<script> UpdateDiv("divId"); // function to change the text of the div on ajax page
</script>';
}
?>
但它不起作用,javascript 代码只是按原样回显,函数不运行。我已经尽力了,在网上搜索等。但似乎没有办法做到这一点。
有没有办法从PHP脚本运行JavaScript函数?
您应该在客户端管理代码执行。 假设通过 Ajax 调用的 PHP 脚本是
?php
if(isset($_REQUEST['change-div'])) {
echo 'UpdateDiv';
exit();
}
?>
那么你的Ajax成功回调(我在这里与框架无关)可能很简单
...
success : function(response) {
if (response === 'UpdateDiv') {
UpdateDiv();
}
}
通过这种方式,您将保持客户端和服务器端逻辑的良好分离。您也不需要注入javascript代码(更改DOM结构)或使用eval()