我有这个脚本根据下拉列表的值显示和隐藏输入字段。我有多个下拉列表和多个输入字段显示,所以我做了ifelse。但是如何使用for循环或数组来缩短此脚本。我的ID类似于最后的数字。
$('select').on('change',function(){
if( $(this).val()==="Other"){
if( this.id == 'bedconfigdrop0'){
$('#bedConfigOther0').show();
}
else if( this.id == 'bedconfigdrop1'){
$('#extraSetBedConfigOther1').show();
}
else if( this.id == 'bedconfigdrop2'){
$('#extraSetBedConfigOther2').show();
}
else if( this.id == 'bedconfigdrop3'){
$('#extraSetBedConfigOther3').show();
}
else if( this.id == 'bedconfigdrop4'){
$('#extraSetBedConfigOther4').show();
}
}else if( $(this).val() != "Other"){
if( this.id == 'bedconfigdrop0'){
$('#bedConfigOther').hide();
}
else if( this.id == 'bedconfigdrop1'){
$('#extraSetBedConfigOther1').hide();
}
else if( this.id == 'bedconfigdrop2'){
$('#extraSetBedConfigOther2').hide();
}
else if( this.id == 'bedconfigdrop3'){
$('#extraSetBedConfigOther3').hide();
}
else if( this.id == 'bedconfigdrop4'){
$('#extraSetBedConfigOther4').hide();
}
}
});
答案 0 :(得分:1)
这里的男人:
$('select').on('change',function(){
if( $(this).val()==="Other"){
for(var i=0; i<5; i++) {
if(this.id == 'bedconfigdrop'+i) {
$('#bedConfigOther'+i).show()
break;
}
}
}else if( $(this).val() != "Other"){
for(var i=0; i<5; i++) {
if(this.id == 'bedconfigdrop'+i) {
$('#bedConfigOther'+i).hide()
break;
}
}
}
});