2011-05-02 247 views
17

我想根据第一个选择框中的选择填充一个选择框。我在网上查了一下,发现了很多有关硬编码选项的有用信息,但我需要我的选项来自查询(例如在Coldfusion中的cfquery)。我知道cfquery是服务器端的,所以我不能将它包含在我的jquery中,但是还有其他选择吗?基于另一个选择框中的选择填充一个选择框 - jQuery?

我用的是下面的例子:

HTML:

<select id="counties"> 
    <option> </option> 
    <option> somerset </option> 
    <option> hertfordshire </option> 
</select> 

<select id="towns" disabled="true"> 
</select> 

JS:

var countyTowns = [ 
    ["Bath", "Bristol"], 
    ["Letchworth", "Hitchin"] 
]; 

$("#counties").change(function() { 
    var county = this.selectedIndex - 1; 
    $("#towns").empty(); 
    if (county === -1) { 
     $("#towns").attr("disabled", true); 
    } else { 
     var towns = countyTowns[county]; 
     for (var i = 0; i < towns.length; i++) { 
      $("#towns").append($("<option></option>").text(towns[i])); 
     } 
     $("#towns").attr("disabled", false); 
    } 
}); 

我需要的是城镇是动态的,并且能够从阅读一个数据库。

任何帮助,非常感谢!

感谢

+0

这里被很好地解释教程线对你将会理解的代码进行深入的解释asily http://www.developphp.com/view.php?tid=1267 – 2014-03-19 21:34:48

回答

13
+0

太棒了。谢谢!第一个例子帮了我很多。我只是不得不改变它与coldfusion一起工作。谢谢! – shawleigh17 2011-05-02 19:42:55

+9

@EdgarVillegasAlvarado我意识到你的答案解决了这个问题。然而,我经常看到这个问题被标记为可能的重复(今天标记为一个),并且仅链接答案应该包含从中获取的代码。如果这些网站/网页不再存在,那么答案(和问题)对任何人都是没有用的。 *只是说*。 – 2016-08-07 17:17:42

+1

是的,这不是一个好的答案,如果不是因为它已经在这里待了6年,我想它不会有15个上传赞助人! – miken32 2017-02-15 00:22:35

相关问题