2012-02-10 54 views
1

文檔中有沒有準備調用php腳本的方法?從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腳本添加信息給他們。

+2

你要知道,你不能使用JavaScript和PHP這樣的。 PHP總是首先被解釋(在服務器端運行),而javascript則被瀏覽器解釋。 – Andrew 2012-02-10 20:47:22

+0

PHP是*服務器端*,JavaScript是*客戶端*。 PHP會生成一個瀏覽器呈現的頁面。您可以使用AJAX將JavaScript與PHP頁面交談以獲取腳本。 – 2012-02-10 20:48:11

回答

5

你在混合客戶端和服務器端,沒有接口。您將不得不使用$.ajax從php腳本中提取內容並相應地更新您的DOM。

當然......你也可以用一種合理的方式設計你的網站。這種方法最好看起來很可疑,幾乎肯定有一個更好的,專門的服務器端解決方案。

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中。雖然不是很好的設計。