2009-04-24 132 views

回答

3

兩個當你把你的頁面發送到客戶端時,PHP就完成了。所有你到達那裏是JavaScript。

  1. Ajax:當您選擇第一個下拉菜單時,您可以使用Ajax調用。在JavaScript中定義一個函數,所以當第一個下拉菜單中的選項被選中時,它將調用一個URL,並將選定項目的ID發送到該URL,並獲取XML結果並使用它填充第二個下拉列表。

  2. JavaScript數組:這種方法與其他類似,區別在於兩個下拉列表的所有數據都已經作爲Javascript對象或數組發送到了客戶端。通過從第一個下拉列表中選擇一個選項,JavaScript函數將使用本地數組或對象填充第二個下拉列表,而不是調用Ajax調用。

第二種方法的優點是更改第二個下拉列表更快,並且不需要其他連接。但首次加載頁面將需要更長的時間,因爲所有的下拉數據都應該先加載。我在我的一些頁面中使用了第二種方法,但是如果您有大量數據來獲取第一個下拉菜單中的每個選項,則更好的方法是第一種方法。

我推薦使用一個衆所周知的框架,例如jQuery。它會緩解你所有的工作。您可以調用ajax調用,並輕鬆更改第二個下拉列表的子項。

編輯:

在第一方法

(AJAX調用)我說從XML負荷數據。我的意思是建立一個到服務器的AJAX連接,連接到一個PHP頁面,該頁面將接受一個參數,比如第一個select標籤中selected選項的值,然後搜索服務器上的數據庫,獲取相關結果並返回一個XML文檔有第二個選擇標籤的所有線索。並且在發出Ajax請求的JavaScript函數中,您可以根據結果XML解析該XML併爲第二個選擇標籤創建選項標籤。你的PHP腳本接受一個值,並可以根據該值做任何事情。 XML部分,只是一個轉移工具。

+0

嗨,我第一個本身 - 你只需要從XML獲取,但我需要從數據庫動態的數據。 – praveenjayapal 2009-04-24 06:26:19

相關問題