2012-04-18 19 views
0

可能重複:
Can I use php in javascript?如何在JavaScript標記中使用PHP代碼?

我要分配變量 「i」(JavaScript的)的值到變量$ x(PHP)。 下面的代碼does not工作

<script type="text/javascript"> 
$(function() { 

for (var i = 0; i <= 10; i += 1) 
    d1.push([i, <?php $x=" ?>i<?php "; echo test($x); ?>]); 
. 
. 
. 
+1

不可能,你必須使用ajax。 PHP是服務器端,JS是客戶端。 PHP在你的頁面被渲染完成後,你不能用JS在你的頁面被渲染後纔開始改變它。 – 2012-04-18 11:53:33

+1

你不能這樣做。谷歌關於AJAX – Vytautas 2012-04-18 11:53:35

+0

你不能分配javascript值(變量)到一個php變量 – nithi 2012-04-18 11:55:22

回答

0

但是PHP是服務器端,所以在JavaScript的不斷認識它的存在......你需要的PHP變量保存到某種JS數據結構的循環之前進行解析

0

您可以使用PHP代碼來生成JavaScript,然後將其提供給用戶。 反過來(使用JavaScript創建PHP代碼或在那裏注入值)是不可能的。

這裏的一個例外是,您可以使用AJAX請求在服務器上執行另一個PHP腳本。在該請求中,您可以包含由JavaScript生成的一些值,以將它們傳遞給PHP腳本。

一般而言,PHP是服務器端語言,而JavaScript則在客戶端。您可以在服務器端生成客戶端的代碼,但不是反之。

0

當然,這是行不通的。你的代碼正在做的是分配" ?>i<?php "的字符串值$x的PHP變量。你不能在字符串文字中間逃離PHP模式。

您似乎誤解了Web應用程序的客戶端/服務器模型的某些基本原理。 JavaScript運行在客戶端(在瀏覽器中),服務器上的PHP。客戶端不應該看到任何PHP代碼,服務器也不會執行任何JavaScript代碼。你不能混合搭配(反正不用AJAX)。

0

你可以$ _POST變量內容到服務器(通過表單)。否則,你將不得不使用AJAX將變量發佈到服務器。

無論採用哪種方式,您都需要從客戶端取得併發送給服務器端。