2011-12-21 81 views
2
 function al(){ 
     var selr = jQuery('#grid').jqGrid('getGridParam','selrow'); 
     if(selr){ 
      <? 
       include_once("../../DB/singleton.php"); 
       $pDatabase = Database::getInstance(); 
       $c = $pDatabase->query("select c.city_title as 'City' from teamshuffle.tbl_city c, teamshuffle.tbl_sport_city s where c.tblcity_id = s.tblcity_id and s.tblsport_id = " .); 
       while($r = mysql_fetch_array($c)){ 
        echo("alert(\"" . $r[0] . selr . "\");"); 
       } 
      ?> 

     } 
    } 

這是我的javascript函數。我需要訪問該行中的變量「selr」如何使用php代碼訪問javascript變量

echo("alert(\"" . $r[0] . $d . "\");"); 
+1

嚴......服務器端VS客戶端。你不能使用阿賈克斯;當JS執行時,php早就結束了它的工作 – 2011-12-21 13:58:49

回答

0

不,你不能這樣做。 PHP在服務器上執行,Javascript - 在客戶端的瀏覽器中執行。他們必須通過HTTP請求進行通信。

0

您將不得不向服務器發送ajax請求併發送適當的響應。

1

簡答:你不行。 PHP是服務器端,JavaScript是客戶端。

龍答:

你可能不能夠「訪問」的變量,但你可以在一個Ajax請求到任何PHP頁面需要它發送的值起飛和使用它。作爲POST參數或Query參數。

+0

有些憤怒的靈魂在這個主題中低估了每個人:-) – 2011-12-21 14:11:52

1

在PHP中訪問JS變量是不可能的。但是,你可以用PHP生成Javascript這應該是這樣的,並做你期望它做的事情:

  while($r = mysql_fetch_array($c)){ 
       echo 'alert("' . $r[0] . '" + selr);'; 
      } 

注意+ selr是回聲的一部分,所以它被髮送到瀏覽器和JavaScript並串在客戶端的污染。

如果您不明白我的意思,請查看瀏覽器中生成的HTML源代碼。

0

對不起,沒有測試過,只是猜測。嘗試使用cookie;

function al(){ 
    var selr = jQuery('#grid').jqGrid('getGridParam','selrow'); 
    setCookie("selr", selr, 1); 

    if(selr){ 
     <? 
      include_once("../../DB/singleton.php"); 
      $pDatabase = Database::getInstance(); 
      $c = $pDatabase->query("select c.city_title as 'City' from teamshuffle.tbl_city c, teamshuffle.tbl_sport_city s where c.tblcity_id = s.tblcity_id and s.tblsport_id = " .); 
      while($r = mysql_fetch_array($c)){ 
       echo("alert(\"" . $r[0] . $_COOKIE['selr'] . "\");"); 
       } 
     ?> 
    } 
} 
function setCookie(c_name,value,exdays){ 
    var exdate = new Date(); 
    exdate.setDate(exdate.getDate() + exdays); 
    var c_value = escape(value) + ((exdays==null) ? "" : "; expires="+exdate.toUTCString()); 
    document.cookie=c_name + "=" + c_value; 
} 
相關問題