2009-09-08 82 views
0

我有以下的jQuery功能PHP在jQuery代碼可能嗎?

$(function(){ 
    $("select#rooms").change(function(){ 
    $.getJSON("/admin/select.php",{id: $(this).val(), ajax: 'true'}, 
    function(j){ 
     var options = ''; 
     for (var i = 0; i < j.length; i++) { 
     options += '<option value="' + j[i].optionValue + '">' 
     + j[i].optionDisplay + '</option>'; 
     } 
     $("select#ctlPerson").html(options); 
    }) 
    }) 
}) 

你看我傳遞兩個值select.php。第二個值是硬編碼文本。而不是我想發送一些動態價值。我可以把一個PHP變量有莫名其妙和傳遞?

基本上我呼籲下拉變化後臺腳本並通過其ID ..但在某些情況下,我會想通過另一種價值,這也是依賴於下拉變化。

+1

我不明白你的問題 – 2009-09-08 03:54:45

+0

會在哪裏的「動態價值」您參考從何而來?你不能從外部PHP通過PHP變量,但是PHP和JS將有機會獲得同樣的資源和select.php也許能得到它自己的數據。 (假設你沒有傳遞客戶端信息) – anschauung 2009-09-08 03:57:44

回答

0

你的意思是這樣的:

$(function(){ 
    var isAjax = '<?=isAjax?>'; 
    $("select#rooms").change(function(){ 
    $.getJSON("/admin/select.php",{id: $(this).val(), ajax: isAjax}, 
    function(j){ 
     var options = ''; 
     for (var i = 0; i < j.length; i++) { 
     options += '<option value="' + j[i].optionValue + '">' 
     + j[i].optionDisplay + '</option>'; 
     } 
     $("select#ctlPerson").html(options); 
    }) 
    }) 
}) 
1

不能直接包含的東西,PHP會立即明白作爲一個變量,但你可以使用JSON序列化的JavaScript變量,然後在PHP解析它,把它放回一個變量PHP知道如何處理。

這非常適用於像數組或對象的複雜數據......這是八九不離十矯枉過正簡單的值,你可以從剛剛$ _GET/$ _ POST拿起PHP。

0

你可以通過作爲第二個參數值一個jQuery的結果選擇,就像第一個參數

制定一個選擇,抓住你需要的元素。它可能不是$(this).val()項目,但也許$('isAjax').val()