2011-10-03 16 views
0

我想创建三个Pull Down菜单.....这是他们的样子。大陆将是第一个拉下菜单,第二个是国家,所以如果从第一个选择非洲,第二个将只有非洲国家。当一个点击第二个,那就是选择一个国家......说苏丹,那么第三个拉丁将会有苏丹的州/省。JavaScript Pull Down菜单

我该怎么做?我想要一些简单而基本的东西?

我将其存储在JavaScript数据类型... { “北美”:[美国,加拿大], “非洲”: “肯尼亚”, “Tunsia”, “Morroco”]}

+0

@Andrew,任何事情都可以。 – user618677

+1

@ user618677安德鲁建议,如果您在人们帮助过您的问题上标记了正确的一些旧问题,您会获得更多兴趣。另外'{“north Amrerica”:...'是一个javascript文字对象,不是数据类型。此外,我会建议有这个自己的裂缝,并张贴你已经尝试过的代码。 –

回答

1

我建议使用jQuery库来使数据绑定非常简单。假设你的数据类型如你在问题中所述的那样定义,你可以让json对象包含所有的信息。 I.E.你有{大陆:[国家:[州/省],...],那么你需要做的第一个选择器是通过获取对象的键来显示大陆。然后,您将使用由所选键的值(另一个json字符串)定义的键来填充第二个下拉列表。接下来根据国家/地区子字符串创建另一个JSON对象,并根据第二次下拉的选择再次按键搜索。最后,您将使用位于国家/地区关键字的值填充第三个下拉菜单。

基本上你所拥有的是一个2层的JSON对象,第一层包含Continents作为键的值为2级,其中包含国家/地区作为国家/省份的键值。

如果你知道所有的数据,没有理由创建一个数据对象来保存数据,那么JSON字符串就足够了。

0

以下是我正在寻找的。我只是想出了它。谢谢詹姆斯Khoury

  <form id="someform" > 
      <select id="sample" onChange="myfunction(this)"> 
      <option value="1">Option 1</option> 
      <option value="2">Option 2</option> 
      <option value="3">Option 3</option> 
      </select> 
      </form> 
      <form id="someform" > 
      <select id="samp" > 
      <option value="1">Fire Power</option> 
      </select> 
      </form> 
      <script type="text/javascript"> 
      function myfunction(myObj) { 
      var myselect=document.getElementById("samp") 
      try{ 
      myselect.add(new Option("New Last Option", "0"), null) //a 
      "sample" 
      myselect.add(new Option("New First Option", "1"), myselect.options[0]) 
      } 
      catch(e){ //in IE, try the below version instead of add() 
      myselect.add(new Option("New Last Option", "0")) 
      myselect.add(new Option("New First Option", "1"), 0) 
      } 
      } 
      </script>