我有2个下拉菜单,我想要这个:当我在名为“ItemCountry”的下拉菜单中选择选项时,div id =“StateFeeder”将根据第一个中的值在另一个页面中加载某个下拉菜单菜单。
这是第一个菜单:
<label for="ItemCountry">Country <span class="req">*</span></label>
<select name="ItemCountry" id="ItemCountry" class="cat_dropdown" onblur="StateFeeder()">
<option value=" ">-- Select Country --</option>
<option value="AU" selected="selected">Australia</option>
<option value="CA">Canada</option>
<option value="CN">China</option>
<option value="NZ">New Zealand</option>
<option value="RU">Russia</option>
<option value="US">United State</option>
</select>
,这是第二个菜单:
<div id="StateFeeder">
<div>
<label for="ItemState">State <span class="req">*</span></label>
<select name="ItemState" id="ItemState" class="cat_dropdown">
<option value="">-- Please select --</option>
<option value="NSW">NSW</option>
<option value="VIC">VIC</option>
<option value="QLD">QLD</option>
<option value="ACT">ACT</option>
<option value="TAS">TAS</option>
<option value="WA">WA</option>
<option value="SA">SA</option>
<option value="NT">NT</option>
</select>
e.g. NSW
</div>
</div>
我写的jquery但它不起作用:
<script type="text/javascript">
$(function() {
$('#ItemCountry').change(function() {
if (document.ItemCountry.selectedIndex == 'AU') {
$("#StateFeeder").empty().html('<img src="/images/mapCountry /AU/ajaxloader.gif" class="IMG-Loading" />');
$('#StateFeeder>div').load('/StateFeeder/StateFeeder-Buy.html #StateFeeder-AU');
};
if (document.ItemCountry.selectedIndex == 'CA') {
$("#StateFeeder>div").empty().html('<img src="/images/mapCountry/AU/ajax-loader.gif" class="IMG-Loading" />');
$('#StateFeeder').load('/StateFeeder/StateFeeder-Buy.html #StateFeeder-CA');
};
if (document.ItemCountry.selectedIndex == 'CN') {
$("#StateFeeder").empty().html('<img src="/images/mapCountry/AU/ajax-loader.gif" class="IMG-Loading" />');
$('#StateFeeder').load('/StateFeeder/StateFeeder-Buy.html #StateFeeder-CN');
};
if (document.ItemCountry.selectedIndex == 'NZ') {
$("#StateFeeder").empty().html('<img src="/images/mapCountry/AU/ajax-loader.gif" class="IMG-Loading" />');
$('#StateFeeder').load('/StateFeeder/StateFeeder-Buy.html #StateFeeder-NZ');
};
if (document.ItemCountry.selectedIndex == 'RU') {
$("#StateFeeder").empty().html('<img src="/images/mapCountry/AU/ajax-loader.gif" class="IMG-Loading" />');
$('#StateFeeder').load('/StateFeeder/StateFeeder-Buy.html #StateFeeder-RU');
};
if (document.ItemCountry.selectedIndex == 'US') {
$("#StateFeeder").empty().html('<img src="/images/mapCountry/AU/ajax-loader.gif" class="IMG-Loading" />');
$('#StateFeeder').load('/StateFeeder/StateFeeder-Buy.html #StateFeeder-US');
};
});
});
</script>
答案 0 :(得分:1)
selectedIndex
返回所选选项的索引,您应该使用value
属性:
$(function() {
$('#ItemCountry').change(function() {
var val = this.value; // value of the select element
$("#StateFeeder").html('<img src="/images/mapCountry/AU/ajax-loader.gif" class="IMG-Loading" />');
$('#StateFeeder').load('/StateFeeder/StateFeeder-Buy.html #StateFeeder-'+val);
})
})
答案 1 :(得分:0)
$('#ItemCountry').change(function()
{
/* Take the value of selected option */
var value = $(this).val();
/* Use this instead of lots of if statements */
var str = '/StateFeeder/StateFeeder-Buy.html #StateFeeder-' + value;
$('#StateFeeder').load(str);
});