Javascript 多选引导下拉选项选择器不总是显示正确/不同的变量
我现在使用的multi-select bootstrap下拉选择器打破了我用来显示不同变量的JS,这取决于它是房地产销售还是长期租赁,即价格范围 当我完美地选择long lets下拉列表(默认情况下,在显示销售价格的sales选项上)时,我当前使用的Javascript会工作,因此它会显示正确的每月价格,但是当我返回sale下拉选项时,它会将我带回到销售价格,它固定在长期价格选项上Javascript 多选引导下拉选项选择器不总是显示正确/不同的变量,javascript,html,css,twitter-bootstrap,multi-select,Javascript,Html,Css,Twitter Bootstrap,Multi Select,我现在使用的multi-select bootstrap下拉选择器打破了我用来显示不同变量的JS,这取决于它是房地产销售还是长期租赁,即价格范围 当我完美地选择long lets下拉列表(默认情况下,在显示销售价格的sales选项上)时,我当前使用的Javascript会工作,因此它会显示正确的每月价格,但是当我返回sale下拉选项时,它会将我带回到销售价格,它固定在长期价格选项上 $(".select_type").change(function () { if ($(
$(".select_type").change(function () {
if ($(this).find(':selected')[0].className === "propertySalesOption") {
$('.rentalSearch').hide();
$('.lettingsSearch').hide();
$('.saleSearch, .SalesRentSearch').fadeIn('fast');
$("#longletval").val("0");
}
else if ($(this).find(':selected')[0].className === "longLetsOption") {
$('.saleSearch').hide();
$('.lettingsSearch').hide();
$('.rentalSearch, .SalesRentSearch').fadeIn('fast');
$("#longletval").val("1");
}
else if ($(this).find(':selected')[0].className === "holidayLettingsOption") {
$('.saleSearch').hide();
$('.rentalSearch').hide();
$('.SalesRentSearch').hide();
$('.lettingsSearch').fadeIn('fast');
}
});
<select class="select_type form-control selectpicker">
<option class="propertySalesOption">Property Sales</option>
<option class="longLetsOption">Long Lets</option>
</select>
<select name="MinimumPrice" class="form-control selectpicker">
<option value="0">Min Price</option>
<option class="rentalSearch" style="display:none;" value="500">€500 (/m)</option>
<option class="rentalSearch" style="display:none;" value="600">€600 (/m)</option>
<option class="rentalSearch" style="display:none;" value="700">€700 (/m)</option>
<option class="rentalSearch" style="display:none;" value="800">€800 (/m)</option>
<option class="rentalSearch" style="display:none;" value="900">€900 (/m)</option>
<option class="rentalSearch" style="display:none;" value="1000">€1.000 (/m)</option>
<option class="rentalSearch" style="display:none;" value="1200">€1.200 (/m)</option>
<option class="rentalSearch" style="display:none;" value="1400">€1.400 (/m)</option>
<option class="rentalSearch" style="display:none;" value="1600">€1.600 (/m)</option>
<option class="rentalSearch" style="display:none;" value="1800">€1.800 (/m)</option>
<option class="rentalSearch" style="display:none;" value="2000">€2.000 (/m)</option>
<option class="rentalSearch" style="display:none;" value="2500">€2.500 (/m)</option>
<option class="rentalSearch" style="display:none;" value="3000">€3.000 (/m)</option>
<option class="rentalSearch" style="display:none;" value="4000">€4.000 (/m)</option>
<option class="rentalSearch" style="display:none;" value="5000">€5.000 (/m)</option>
<option class="rentalSearch" style="display:none;" value="10000">€10.000 (/m)</option>
<option class="rentalSearch" style="display:none;" value="15000">€15.000 (/m)</option>
<option class="saleSearch" value="50000">€50.000</option>
<option class="saleSearch" value="75000">€75.000</option>
<option class="saleSearch" value="100000">€100.000</option>
<option class="saleSearch" value="125000">€125.000</option>
<option class="saleSearch" value="150000">€150.000</option>
<option class="saleSearch" value="175000">€175.000</option>
<option class="saleSearch" value="200000">€200.000</option>
<option class="saleSearch" value="250000">€250.000</option>
<option class="saleSearch" value="300000">€300.000</option>
<option class="saleSearch" value="350000">€350.000</option>
<option class="saleSearch" value="400000">€400.000</option>
<option class="saleSearch" value="450000">€450.000</option>
<option class="saleSearch" value="500000">€500.000</option>
<option class="saleSearch" value="550000">€550.000</option>
<option class="saleSearch" value="600000">€600.000</option>
<option class="saleSearch" value="650000">€650.000</option>
<option class="saleSearch" value="700000">€700.000</option>
<option class="saleSearch" value="750000">€750.000</option>
<option class="saleSearch" value="800000">€800.000</option>
<option class="saleSearch" value="850000">€850.000</option>
<option class="saleSearch" value="900000">€900.000</option>
<option class="saleSearch" value="950000">€950.000</option>
<option class="saleSearch" value="1000000">€1.000.000</option>
<option class="saleSearch" value="1500000">€1.500.000</option>
<option class="saleSearch" value="2000000">€2.000.000</option>
<option class="saleSearch" value="2500000">€2.500.000</option>
<option class="saleSearch" value="3000000">€3.000.000</option>
<option class="saleSearch" value="3500000">€3.500.000</option>
<option class="saleSearch" value="4000000">€4.000.000</option>
<option class="saleSearch" value="4500000">€4.500.000</option>
</select>
$(“.选择类型”).更改(函数(){
if($(this).find(':selected')[0].className==“propertySalesOption”){
$('.rentalSearch').hide();
$('.lettingsSearch').hide();
$('.saleSearch、.SalesRentSearch').fadeIn('fast');
美元(“#longletval”).val(“0”);
}
else if($(this).find(':selected')[0].className==“longLetsOption”){
$('.saleSearch').hide();
$('.lettingsSearch').hide();
$('.rentalSearch、.SalesRentSearch').fadeIn('fast');
美元(“#longletval”).val(“1”);
}
else if($(this).find(':selected')[0].className==“holidayLettingsOption”){
$('.saleSearch').hide();
$('.rentalSearch').hide();
$('.SalesRentSearch').hide();
$('.lettingsSearch').fadeIn('fast');
}
});
物业销售
长裙
最低价格
&欧元;500(/m)
&欧元;600(/m)
&欧元;700(/m)
&欧元;800(/m)
&欧元;900(/m)
&欧元;1.000(/m)
&欧元;1.200(/m)
&欧元;1.400(/m)
&欧元;1.600(/m)
&欧元;1.800(/m)
&欧元;2.000(/m)
&欧元;2.500(/m)
&欧元;3.000(/m)
&欧元;4.000(/m)
&欧元;5.000(/m)
&欧元;10.000(/m)
&欧元;15000(/m)
&欧元;50
&欧元;75
&欧元;100
&欧元;125
&欧元;150
&欧元;175
&欧元;200
&欧元;250
&欧元;300
&欧元;350
&欧元;400
&欧元;450
&欧元;500
&欧元;550
&欧元;600
&欧元;650
&欧元;700
&欧元;750
&欧元;800
&欧元;850
&欧元;900
&欧元;950
&欧元;1.000.000
&欧元;1.500.000
&欧元;2.000.000
&欧元;2.500.000
&欧元;3.000.000
&欧元;3.500.000
&欧元;4.000.000
&欧元;4.500.000
当我在下面添加此JS时,效果很好,但是下拉选项在容器中被切断,并且在我的二次搜索中也会弄乱下拉选项,请参见下面的代码和屏幕截图:
<script>
$(document).ready(function () {
$('.selectpicker').selectpicker();
});
</script>
$(文档).ready(函数(){
$('.selectpicker').selectpicker();
});
在您的javascript和它运行之前,我已经包含了最新的jQuery版本
<script src="http://code.jquery.com/jquery-latest.min.js"
type="text/javascript"></script>
<script>
$(".select_type").change(function () {
if ($(this).find(':selected')[0].className === "propertySalesOption") {
$('.rentalSearch').hide();
$('.lettingsSearch').hide();
$('.saleSearch, .SalesRentSearch').fadeIn('fast');
$("#longletval").val("0");
}
else if ($(this).find(':selected')[0].className === "longLetsOption") {
$('.saleSearch').hide();
$('.lettingsSearch').hide();
$('.rentalSearch, .SalesRentSearch').fadeIn('fast');
$("#longletval").val("1");
}
else if ($(this).find(':selected')[0].className === "holidayLettingsOption") {
$('.saleSearch').hide();
$('.rentalSearch').hide();
$('.SalesRentSearch').hide();
$('.lettingsSearch').fadeIn('fast');
}
});
$(“.select_type”).change(函数(){
if($(this).find(':selected')[0].className==“propertySalesOption”){
$('.rentalSearch').hide();
$('.lettingsSearch').hide();
$('.saleSearch、.SalesRentSearch').fadeIn('fast');
美元(“#longletval”).val(“0”);
}
else if($(this).find(':selected')[0].className==“longLetsOption”){
$('.saleSearch').hide();
$('.lettingsSearch').hide();
$('.rentalSearch、.SalesRentSearch').fadeIn('fast');
美元(“#longletval”).val(“1”);
}
else if($(this).find(':selected')[0].className==“holidayLettingsOption”){
$('.saleSearch').hide();
$('.rentalSearch').hide();
$('.SalesRentSearch').hide();
$('.lettingsSearch').fadeIn('fast');
}
});
还要将脚本标记添加到javascript代码中
检查这里:您使用的是引导v3吗?你有没有在你的页面上包含其他css文件,我认为这不是默认的主题,对吗?您是否有其他加载了该目标的js文件?你能构建JSFIDLE让我们看到该行为的实时版本吗?你能分享完整的html吗?请查看价格是否正确显示:在FF和Chrome中,选择“物业销售”下拉列表,单击“长租赁”,当选择“长租赁”时,“最低价格”字段将显示不同的价格(/m)在它们的末尾(这很好),但是当您单击所选的“长期租赁”选项并单击“物业销售”时,当选择了“物业销售”选项时,它不会将价格范围更改回它们应该的价格范围,因为您可以向我展示代码的和平是在选项中添加
/m
?(我看到它已经在页面的源代码中)或隐藏/显示它的内容。。请在第170行出现错误,尝试对该行进行注释,并测试选择是否有效。如果答案是肯定的,则检查doClear()函数。同时尝试将$(“.select_type”)。将(函数()..更改为$(document)。在(“change”,“.select_type”,函数()。。。