2014-10-12 123 views
0

我想要一個下拉菜單,根據在初始下拉菜單中選擇的值更改其選項,並且我在Stackoverflow上找到了一個非常好的解決方案。所以首先感謝你。這正是我想要的。這是它的樣子:在HTML表單中使用JQuery動態下拉菜單(PHP)

<select id="us_state"></select> 
    <select id="city_name"></select> 

    var data = { 
    "State 1": ["City 1", "City 2"], 
    "State 2": ["City 3", "City 4"], 
    "State 3": ["City 5", "City 6", "City 7"] 
    }; 

    var $states = $("#us_state").on("change", function() { 
    var cities = $.map(data[this.value], function(city) { 
    return $("<option />").text(city); 
    }); 
    $("#city_name").empty().append(cities); 
    }); 

    for (var state in data) { 
    $("<option />").text(state).appendTo($states); 
    } 

    $states.change(); 

這裏的JFiddle:http://jsfiddle.net/8hbcP/

由於我在Web應用程序開發漂亮的綠色,我有以下問題:是否有人可以幫助我嵌入到我的HTML這個形式是這樣的:

$row1 = " 
    <tr> 
     <td colspan='1' align = 'left';> 
     Google Search:<br> 
     <select name='filters[]' id='filters' style='width:180px;' size='6'> 
     " . $filter_dropdown . " 
     </select> 
     </td> 
     <td colspan='1' align = 'left';> 
     **Kategorie or Site:<br> 
     <select id='us_state'> 
     </select>** 
     <br/> 
     </td> 
     <td colspan='1' align = 'left';> 
     **Selection:<br> 
     <select id='city_name'> 
     </select>** 
     </td> 
     <td colspan='1' align = 'left';> 
     </td>  
    </tr>";  

你或許可以推斷,我使用PHP,所以$行是不實際的表現公式,它會到HTML的表現公式爲一個變量。我無法將下拉列表顯示在我的網頁上。

第二個問題是:var data {}中填充下拉列表的值應該是mySQL查詢的結果,有人可以告訴我如何將變量數組放入包含查詢?

再次提前致謝。

+0

不清楚是什麼問題'如何embed'您的字符串。至於第二部分,您可能需要在選擇狀態時發出ajax請求以獲取城市數據。否則,當頁面加載時,需要將每個城市轉儲到頁面,這相當於大量的數據 – charlietfl 2014-10-12 12:59:55

+0

如何獲取下拉列表以顯示在我的html上是我的意思。我在我的代碼中嘗試過的東西似乎不起作用。 **分類或網站:
** – 2014-10-12 14:26:23

回答

0

下面是第二個問題的答案:從mysql表(mysql_fetch_assoc)獲取所需的字段,獲取您獲取的數組中的行數,創建表單和select元素,然後創建一個簡單的for循環遍歷每一行,並在每次迭代中創建一個選項變量。 下面是從我的代碼示例:

<form action="home.php" method="post"> 
<select name="stores"> 
<? for ($i=0; $i<$numrows; $i++){ 
$k=$i+1; 
$varname='altname'[$k]; 
$varname2='alt'.[$k]; 

?> 
    <option value="<?echo "storename=".$$varname."&storeid=".$$varname2;?>"><?echo $$varname;?></option> 

<?}?> 
</select> 
<input type="submit" class="button" value="SeeStore" /> 
</form> 

我希望這是明確的:)