Javascript 根据输入值显示一个div并隐藏其他div

Javascript 根据输入值显示一个div并隐藏其他div,javascript,jquery,html,css,Javascript,Jquery,Html,Css,如何重构$('region-2,#region-3').hide()这样我就不需要输入多个ID了?可能有50多个元素 $('#submit1')。在(“单击”,函数(){ var input_val=$('#input1').val(); 如果(输入值=区域1){ $('#region-1').show().attr(“样式”,“显示:块!重要”); $(“#区域-2,#区域-3”).hide(); }else if(输入值=region2){ $('#region-2').show().at

如何重构
$('region-2,#region-3').hide()这样我就不需要输入多个ID了?可能有50多个元素

$('#submit1')。在(“单击”,函数(){
var input_val=$('#input1').val();
如果(输入值=区域1){
$('#region-1').show().attr(“样式”,“显示:块!重要”);
$(“#区域-2,#区域-3”).hide();
}else if(输入值=region2){
$('#region-2').show().attr(“样式”,“显示:块!重要”);
$(“#区域-1,#区域-3”).hide();
}
});

区域1
区域2
区域3

要实现这一点,您可以将查找值放入每个子div的
data
属性中。然后您可以
筛选()
它们以找到与
#input1
show()
的值匹配的值,同时隐藏所有其他值。试试这个:

$('#submit1')。在(“单击”,函数(){
var input_val=$('#input1').val();
$('.region container>div').hide().filter(函数(){
返回$(this).data('lookup')==输入值;
}).show();
});

区域1
区域2
区域3

要实现这一点,您可以将查找值放入每个子div的
data
属性中。然后您可以
筛选()
它们以找到与
#input1
show()
的值匹配的值,同时隐藏所有其他值。试试这个:

$('#submit1')。在(“单击”,函数(){
var input_val=$('#input1').val();
$('.region container>div').hide().filter(函数(){
返回$(this).data('lookup')==输入值;
}).show();
});

区域1
区域2
区域3

如果您要使用与id相同的文本,而只是使用不同的空格,那么您可以使用它

因为您使用的是引导,所以可以使用
hide
类,而不需要内联样式

$('#submit1')。在(“单击”,函数(){
if($('#input1').val()){
var input_val=$('#input1').val().replace(''''-');
$('div[id^=“region-”).addClass('hide');
$('#'+input_val).removeClass('hide');
}
});


区域1 区域2 区域3
如果您要使用与id相同的文本,而只是使用不同的空格,那么您可以使用它

因为您使用的是引导,所以可以使用
hide
类,而不需要内联样式

$('#submit1')。在(“单击”,函数(){
if($('#input1').val()){
var input_val=$('#input1').val().replace(''''-');
$('div[id^=“region-”).addClass('hide');
$('#'+input_val).removeClass('hide');
}
});


区域1 区域2 区域3
我只是更新了您代码中的一些jQuery更改,希望它能帮助您。谢谢

您必须在输入中键入与在HTML中写入的ID相同的ID

$('#submit1')。在(“单击”,函数(){
var input_val=$('#input1').val();
$('.hide').hide();
$(“#”+输入值.show();
});
.hide{
显示:无;
}

区域1
区域2
区域3

我只是更新了您代码中的一些jQuery更改,希望它能帮助您。谢谢

您必须在输入中键入与在HTML中写入的ID相同的ID

$('#submit1')。在(“单击”,函数(){
var input_val=$('#input1').val();
$('.hide').hide();
$(“#”+输入值.show();
});
.hide{
显示:无;
}

区域1
区域2
区域3