我想为国家/地区创建一个选择标签,当我们选择国家/地区时,它会隐藏所有 optgroup 及其国家/地区选择标签的内容,但 optgroup 及其内容与所选国家/地区选项具有相同标签,例如
<select name="country">
<option value="United States">United States</option> <!-- if I select US -->
<option value="Canada">Canada</option>
<option value="Mexico">Mexico</option>
</select>
<select name="country">
<optgroup label="United States">
<option value="California">California</option> <!-- Only these states -->
<option value="New York">New York</option> <!-- are displayed -->
</optgroup>
<optgroup label="Canada"> <!-- hidden-->
<option value="Ontario">Ontario</option> <!-- hidden-->
<option value="Quebec">Quebec</option> <!-- hidden-->
</optgroup>
<optgroup label="Mexico"> <!-- hidden-->
<option value="Baja California">Baja California</option> <!-- hidden-->
<option value="Mexico Estado">Mexico Estado</option> <!-- hidden-->
</optgroup>
</select>
这似乎对我来说效果很好:
$("select[name='country']:eq(0)").on("change", function() {
$("select[name='country']:eq(1)")
.find("optgroup,option")
.hide()
.filter("[label='" + this.value + "'],[label='" + this.value + "'] > *")
.show();
});
DEMO: http://jsfiddle.net/MVkXg/ http://jsfiddle.net/MVkXg/
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)