gpt4 book ai didi

javascript - 如何根据 select2 jQuery 字段中选定的多个值显示/隐藏 div

转载 作者:行者123 更新时间:2023-12-02 23:15:53 32 4
gpt4 key购买 nike

我有 select2 jquery 下拉列表,它由两个项目组成 *出租 *用于销售如果我选择“出租”,则其下方将显示与“出售”相同的某些字段。问题是我不知道如果用户在下拉列表中选择了这两个字段,我将如何显示这两个字段。

在我的代码中,我尝试这样做,但是当用户仅选择一个字段时,它会显示两个字段

$('#for_sales_fields').hide();
$('#for_rents_fields').hide();


$('#property-types-ids').change(function() {

if($(this).val() == 1) {
$('#for_sales_fields').show();
}
else {
$('#for_sales_fields').hide();
}
if($(this).val() == 2) {
$('#for_rents_fields').show();
}
else {
$('#for_rents_fields').hide();
}

var test = [];
$.each($('#property-types-ids :selected'), function(){
test.push($(this).val());
$('#for_sales_fields').show();
$('#for_rents_fields').show();
})

}
);

选择何时出售

enter image description here

选择“出租”时

enter image description here

当两者都选择时,它应该显示两个字段

enter image description here

自动生成前端代码

enter image description here

最佳答案

以下是您的问题的解决方案:

最初,您需要在更改事件中保持两个 div 隐藏。然后检查属性类型中所选值的值并显示您的 div

var s2 = $("#property-types-ids").select2({
placeholder: "Choose property type",
tags: true
});

var vals = [];

vals.forEach(function(e){
if(!s2.find('option:contains(' + e + ')').length)
s2.append($('<option>').text(e));
});

s2.val(vals).trigger("change");



$('#for_sales_fields').hide();
$('#for_rents_fields').hide();

$('#property-types-ids').change(function() {

$('#for_sales_fields').hide();
$('#for_rents_fields').hide();

var test = [];
$.each($('#property-types-ids :selected'), function(){
test.push($(this).val());
if($(this).val() == 1) {
$('#for_sales_fields').show();
}
if($(this).val() == 2) {
$('#for_rents_fields').show();
}
})

}
);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.3/js/select2.min.js"></script>
<link href="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.3/css/select2.css" rel="stylesheet"/>

<select multiple name="event_type[]" class="form-control" id="property-types-ids">
<option value="1">For Sale</option>
<option value="2">For Rent</option>
</select>


<div id ="for_sales_fields">
#sales fields div
</div>

<div id ="for_rents_fields">
#Rent fields div
</div>

关于javascript - 如何根据 select2 jQuery 字段中选定的多个值显示/隐藏 div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57174881/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com