2010-03-12 27 views

回答

1

從技術上講這是不可能的。 PHP是服務器端,HTML是客戶端。當用戶調用一個URL時,服務器運行發送到HTML的PHP​​,所以你不能倒退。

然而,您可以使用ajax來獲取選擇框的值並以某種有意義的方式使用它。你想用這個變量做什麼?

編輯

使用jQuery我會選擇框的值發送到AJAX文件,然後讓AJAX文件創建文本框,如果該值是你希望它是什麼。這是一個例子。

$("#selectEle").change(function() { 
    $.ajax({ 
     type: "POST", 
     url: "yourajaxpage.ajax.php", 
     data: {selectVal: $(this).val()}, 
     success: function(response) { 
      $("#textBoxArea").html(response); 
     }, 
     error: function() { alert("Ajax request failed."); } 
    } 
}); 

您將使用$ _POST ['selectVal']獲取您的ajax頁面中的值。在那裏測試這個值,並創建一個HTML文本框,並將其發送回成功函數。

+0

好的,當我從選擇框中選擇一個選項 取決於所選擇的值我將決定是否顯示文本框 但問題是文本框的代碼是在另一個php文件? – 2010-03-12 20:34:05

1

如果沒有提交表單,可以使用AJAX調用完成(請參閱Prototype和MooTools等庫,以獲取簡單的方法),所有選項標記的onchangeHTML屬性都關閉。

0

是的,因爲建議javascript/ajax實現在這裏很合適。

我使用jQuery,但我假設它可以在其他庫中實現。

無論如何,.jQuery中的.change()將爲此工作。當用戶更改下拉列表的選定索引時,它會觸發.change()函數,並且您將在此函數內部插入更多的javascript conde以進行所需的更改。

如果你想要的話,你可以找出選定的索引或獲取選定索引的值,並將其放入基於該文件的邏輯中以加載文本框(也使用javascript)。

喜歡的東西

$('target').change(function() { 
    var value = $('target').val(); // gets the selected value 
    if(value == "what you want it to be") 
    { 
    // load data into a div from your php file. 
    $('#loading_div').load('ajax/test.html'); 
    } 
}); 

這肯定應該讓你開始。

+0

非常感謝這個詳細的代碼 我認爲這將是非常簡單的,但現在所有的答案提到阿賈克斯我會開始尋找它 非常感謝 – 2010-03-13 07:23:08