从document.ready调用PHP

时间:2012-02-10 20:45:15

标签: php javascript document-ready

文档是否有办法准备调用php脚本?

我想做这样的事情。

<script>
    $(document).ready(function($) {

    <?php require("readenglish.php"); ?>
    <?php require("readfrench.php"); ?>
    <?php require("readspanish.php"); ?>
    <?php 

    $opload = $_GET['opload'];
    if ($opload == "reade") {

    }
    else if ($opload == "readf") {

       echo "<script type=\"text/javascript\">\n";

       echo "document.f1.r1[0].checked = false;\n";
       echo "document.f1.r1[1].checked = true;\n";
       echo "SelectRead();\n";

       echo "</script>";

    }

    ?>

    });

</script>

三个php脚本创建div并从外部域php脚本向它们添加信息。

4 个答案:

答案 0 :(得分:5)

您将客户端和服务器端混合在一起,没有接口。您将不得不使用$.ajax从php脚本中提取内容并相应地更新您的DOM。

当然......你也可以用一种有意义的方式设计你的网站。这种方法看起来很可疑,并且几乎肯定有一个更好的,专门的服务器端解决方案。

答案 1 :(得分:1)

您可以在页面中执行以下操作:

$(document).ready(function($) {
   $('#result').load('test.php', function() {
    alert('Load was performed.');
  });
});

在服务器上,test.php包含您的代码:

<?php require("readenglish.php"); ?>
<?php require("readfrench.php"); ?>
<?php require("readspanish.php"); ?>
<?php 

$opload = $_GET['opload'];
if ($opload == "reade") {

}
else if ($opload == "readf") {

   echo "<script type=\"text/javascript\">\n";

   echo "document.f1.r1[0].checked = false;\n";
   echo "document.f1.r1[1].checked = true;\n";
   echo "SelectRead();\n";

   echo "</script>";

}

然后需要将其添加回客户端的DOM中。虽然不是很好的设计。

答案 2 :(得分:0)

我建议使用jQuery。他们有一个加载方法,可以完全满足您的要求:http://api.jquery.com/load/

答案 3 :(得分:0)