首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过OptGroup选择jQuery链接国家/地区

问通过OptGroup选择jQuery链接国家/地区
EN

Stack Overflow用户
提问于 2011-10-17 01:40:58
回答 1查看 1.9K关注 0票数 0

我有以下两个选择列表..我想隐藏State/Prov,直到所选的国家/地区有相应的optgroup标签。所以..。

--用户选择Alegeria..未显示状态选择。

--User选择美国或加拿大;此时将显示State Selects,仅显示optgroup标签与父项名称匹配的值。

讲得通?我找不到一种基于OptGroup的方法,而不是必须手动为每个子对象分配一个'class‘

代码语言:javascript
复制
<select id="C_Country" name="C_Country" aria-required="true" class="required">
    <option value=" " selected="">-- Please Select --</option>
    <option value="AF">Afghanistan</option>
    <option value="AX">Aland Islands</option>
    <option value="USA">United States</option>
    <option value="DZ">Algeria</option>
    <option value="CA">Canada</option>
    <option value="AD">Andorra</option>
</select>


<p><label for="C_State_Prov">State or Province <span title="required">*</span></label></p>
<select id="C_State_Prov" name="C_State_Prov" aria-required="true" class="required">
    <option value="" selected="">-- Please Select --</option>
    <optgroup label="United States">
    <option value="AK">Alaska</option>
    <option value="AL">Alabama</option>
    <option value="AR">Arkansas</option>
    <option value="AZ">Arizona</option>
    <option value="CA">California</option>
    </optgroup>
    <optgroup label="Canada">
    <option value="AB">Alberta</option>
    <option value="BC">British Columbia</option>
    <option value="MB">Manitoba</option>
    </optgroup>
</select>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-10-17 02:03:34

我认为this就是你想要的。

代码语言:javascript
复制
$(function(){
   var state_province = $('#C_State_Prov option, #C_State_Prov optgroup'); 
   state_province.hide();  // hide all state and provinces on page load


   $('#C_Country').change(function(){
       state_province.hide(); // on change of drop down hide all state provinces

       // find the optgroup with the label = the html of the selected dropdown 
       // select the opt group and all of it's children and show them 
       $("#C_State_Prov optgroup[label='"+$(this).find(':selected').html() + "']")
       .children()
       .andSelf()
       .show();  
   }); 
}); 

这可以再清理一下,但是你已经明白了。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7786083

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档