2015-10-14 69 views
1

我有一个添加客户页面2选择(国家和城市)。当我选择Country并选择USA时,第二个选择将会有美国城市的选项。如果我选择Philippines的选项将是在菲律宾的城市,同样有Canada更改选项从国家

我的代码是这样的:

<select class="form-control" name="country" required> 
      <option selected disabled>*Select Country </option> 
      <option>USA</option> 
      <option>Philippines</option> 
      <option>Canada</option> 

</select> &nbsp;&nbsp;&nbsp; 

     //If 'USA' was selected the select options values will be this like. 

     <select class="form-control" name="loc" required> 
      <option selected disabled>*State/City</option> 
      <option></option> 
      <option>California</option> 
      <option>New York</option> 
      <option>New Jersey</option> 
      <option>Illinois</option> 
      <option>Others</option> 
     </select> 

    //else If 'Philippines' was selected the select options values will be this like. 

     <select class="form-control" name="loc" required> 
      <option selected disabled>*State/City</option> 
      <option></option> 
      <option>Manila</option> 
      <option>Quezon City</option> 
      <option>Makati</option> 
      <option>Cebu</option> 
      <option>Davao</option> 
      <option>Others</option> 



    //else If 'Canada' was selected the select options values will be this like. 

     <select class="form-control" name="loc" required> 
      <option selected disabled>*State/City</option> 
      <option></option> 
      <option>Toronto</option> 
      <option>Vancouver</option> 
      <option>Others</option> 
     </select> 
+0

它们存储在你的MySQL数据库中吗?还是他们修理?如果是的话,你可以给我们你的表结构。 –

+0

你想使用jQuery吗?此外,您的选项中没有任何值''?最后,你打算支持多少个国家? (有很多和成千上万的潜在城市)。 –

+1

@LoganWayne是的。 – Edmhar

回答

1

为了轻松实现你想要的,你可以使用jQuery,你可以下载here

然后我添加了id标签为您的<select>字段和value标签为您的选项。

<select class="form-control" name="country" id="country" required> 
    <option selected disabled>*Select Country </option> 
    <option option="USA">USA</option> 
    <option option="Philippines">Philippines</option> 
    <option option="Canada">Canada</option> 
</select> 
<select class="form-control" name="loc" id="loc" required> 
<!-- REST OF OTHER CODES --> 

然后创建脚本:

<script src="jquery-1.9.1.min.js"></script><!-- REPLACE NECESSARY JQUERY FILE DEPENDING ON THE VERSION YOU HAVE DOWNLOADED --> 

<!-- START CREATING YOUR SCRIPT --> 
<script type="text/javascript"> 

    $(document).ready(function(){ 

    $("#country").change(function(){ 
     var country = $(this).val(); 
     var usa = '<option>California</option><option>New York</option><option>New Jersey</option><option>Illinois</option><option>Others</option>'; 
     var phi = '<option>Manila</option><option>Quezon City</option><option>Makati</option><option>Cebu</option><option>Davao</option><option>Others</option>'; 
     var can = '<option>Toronto</option><option>Vancouver</option>'; 
     var other = '<option selected disabled>*State/City</option>'; 

     if(country == "USA"){ 
     $("#loc").empty().append(usa); 
     } 
     else if(country == "Philippines"){ 
     $("#loc").empty().append(phi); 
     } 
     else if(country == "Canada"){ 
     $("#loc").empty().append(can); 
     } 
     else { 
     $("#loc").empty().append(other); 
     } 
    }); 

    }); 

</script> 

看看这个JSFiddle

我不得不放弃我的第一个答案,因为知道你的表单是静态的。

+0

现在好的,谢谢! – Edmhar

+1

@ Edmhar - 很好。不要忘记拉古纳在你的位置。 ;) –

+0

Pinoy?哈哈.... – Edmhar

1

Kumusta Edmhar,

fiddle你已经证明作品精细。只需在您的<head>标签中包含此行...

<script src="https://code.jquery.com/jquery-2.1.1.min.js" type="text/javascript"></script> 

快乐编码!

注:根据OP评论报废原始答案。

+0

Kuya出于好奇的一个问题是建议在html页面上放置php脚本? – guradio

+0

是的,这是完全可以接受的,甚至有时需要达到所需的输出。 – Kuya

+0

ty kuya澄清..快乐编码 – guradio