0

我正在做一个 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 函数?

4

1 回答 1

3

您应该在客户端管理代码执行。假设您通过 ajax 调用的 php 脚本是

?php
   if(isset($_REQUEST['change-div'])) {
      echo 'UpdateDiv';
      exit();
   }
?>

那么您的 Ajax 成功回调(我在这里与框架无关)可能很简单

...
success : function(response) {
    if (response === 'UpdateDiv') {
       UpdateDiv();
    }
}

通过这种方式,您将保持客户端和服务器端逻辑的良好分离。你也不需要注入 javascript 代码(改变你的 DOM 结构)或使用eval()

于 2012-05-08T08:46:24.157 回答