如何在jQuery中从不同的值生成数组
我将根据它们的值筛选一些国家。我在jQuery中尝试过grep和filter,但没有成功。就一个元素而言,它工作正常。 我不知道如何在jQuery中生成正确的数组如何在jQuery中从不同的值生成数组,jquery,arrays,elements,Jquery,Arrays,Elements,我将根据它们的值筛选一些国家。我在jQuery中尝试过grep和filter,但没有成功。就一个元素而言,它工作正常。 我不知道如何在jQuery中生成正确的数组 jQuery.noConflict(); function change_country(seldd) { var look_for_id=''; var opt_id=[]; jQuery('#countries').html(""); jQuery("#countries").append("<op
jQuery.noConflict();
function change_country(seldd) {
var look_for_id=''; var opt_id=[];
jQuery('#countries').html("");
jQuery("#countries").append("<option value='0'>-Country-</option>");
if(seldd.value=='0') { look_for_id='N'; }
if(seldd.value=='1'){ look_for_id='Y'; opt_id=jQuery.filter($("#country option").val(["1, 2, 3, 4"])); }
if(seldd.value=='2'){ look_for_id='Y'; opt_id=jQuery.grep(['5', '6', '7', '8']); }
if(look_for_id=='Y') {
jQuery("#country option[value='"+opt_id+"']").each(function() {
jQuery("#countries").append("<option value='"+jQuery(this).val()+"'>"+jQuery(this).text()+"</option>");
});
} else {
jQuery("#country option").each(function() {
jQuery("#countries").append("<option value='"+jQuery(this).val()+"'>"+jQuery(this).text()+"</option>");
});
}
}
<div>
<select id="region" id="srv_type" onchange="change_fruit(this)" >
<option value="0" selected="selected">Регион</option>
<option value="1">Asia</option>
<option value="2">Europe</option>
</select> </div>
<div style="display:none;" >
<select id="country" name="country" class="inputbox">
<option value="" selected="selected">Страна</option>
<option value="1" >Indonesia</option>
<option value="2">Thailand</option>
<option value="3">Singapore</option>
<option value="4">Malaysia</option>
<option value="5">Greece</option>
<option value="6">Italy</option>
<option value="7">Monaco</option>
<option value="8">Spain</option>
</select>
</div>
<select name="countries" id="countries">
<option value="0">-Country-</option>
</select>
也许是这样的
var a = [];
$("#country option").each(function() {
if($(this).attr('value') > 5){
a.push($(this).text());
}
});
jquery数组与javascript数组相同
thing = [];
或
如果您向数组中添加了内容,例如
countries = ['UK','USA','etc'];
您可以使用jquery.each或for循环遍历它们。您还可以有一个数组,例如
thing = [['UK','Europe'],['USA','North America']];
然后循环遍历主数组,并通过其索引访问其他元素
东西[0][0]将输出到英国
只是快速搜索了一下,这可能会帮助您:
它显示了您可以使用阵列执行的其他一些操作我想您只需要根据您选择的区域选择一个子国家。试试这个:
<select id="region" name="region">
<option value="0" selected="selected">Регион</option>
<option value="country_as">Asia</option>
<option value="country_eu">Europe</option>
</select>
<select id="country" name="country">
<option value="" selected="selected">Страна</option>
<option value="1" class="country_as" >Indonesia</option>
<option value="2" class="country_as">Thailand</option>
<option value="3" class="country_as">Singapore</option>
<option value="4" class="country_as">Malaysia</option>
<option value="5" class="country_eu">Greece</option>
<option value="6" class="country_eu">Italy</option>
<option value="7" class="country_eu">Monaco</option>
<option value="8" class="country_eu">Spain</option>
</select>
你可以
编辑
是具有以下jQuery代码的更好版本:
$(function() {
$("#region").change(function() {
$("[class^=country_]").each(function(){ $(this).hide();});
$("."+$(this).val()).each(function(){ $(this).show();});
});
});
亲爱的Miro,我是jQuery的最新成员,您能更详细地向我解释一下吗。如何将亚洲分配给印度尼西亚、泰国、新加坡、马来西亚,例如,我的列表没有像样本中那样排序,看起来像巴哈马、希腊、印度、意大利、加拿大、法国、美国、土耳其,我想你已经试过了。只需使用类标记您的值,并根据类名选择它们。请参见下面的示例
$(function() {
$("#region").change(function() {
var v = $(this).val();
$("#country > option ").each(function(){ $(this).hide();});
$("."+v).each(function(){ $(this).show();});
});
});
$(function() {
$("#region").change(function() {
$("[class^=country_]").each(function(){ $(this).hide();});
$("."+$(this).val()).each(function(){ $(this).show();});
});
});