【问题标题】:option values in bootstrap select are displayed outside the dropdown引导选择中的选项值显示在下拉列表之外
【发布时间】:2018-04-17 20:44:29
【问题描述】:

我有时在我的 html 页面中遇到问题,其中引导选择中的所有选项都显示在下拉框之外。 (附上截图) 下拉菜单

这个问题只是偶尔观察到。这些值是从 api 调用中填充的。 这是我的引导选择 css 和 js 参考: https://cdnjs.cloudflare.com/ajax/libs/bootstrap-select/1.12.4/css/bootstrap-select.min.css, https://cdnjs.cloudflare.com/ajax/libs/bootstrap-select/1.12.4/js/bootstrap-select.js

下面是我的代码 sn-ps。

$.ajax({
		url: serverName + "api/v1/get/countrylist",
		type: 'GET',
		headers: {
				"Content-Type": "application/json",
				"Authorization": "Basic " + basicKey,
				"x-access-token": xAccessToken

		},
		success: function(response){
			 // console.log("visa-response: "+ response);
				var countryArr = [];
		response.forEach(function(item){
				countryArr.push({"country": item.country, "fee": item.fee});
			 // console.log("my country " + item.country)
		})
		//console.log("countryArr-response: "+ countryArr[1].country);
		countryArr.forEach(function(item){
				$('.select-country .country-list').append('<option class="'+item.fee + '"' +'data-tokens="'+ item.country+'">' + item.country +'</option>')
		})
	
		$('.selectpicker').selectpicker();
		},
		error: function (exception) {
				console.log(exception);
		}
});

  <div class="col-md-6 select-country">



                            <div class="customer-country text-center" >
                                <label style="margin-right:10px;"><strong>Select Your Country:</strong></label>
                                <select class="selectpicker country-list"  data-live-search="true" data-width="auto" data-style="btn-success" data-dropup-auto="false" standard title="Select Country...">

                                </select>

                            </div>

【问题讨论】:

  • 能否提供截图或更多代码?似乎没有足够的代码来解决问题
  • 添加了截图..

标签: javascript jquery twitter-bootstrap bootstrap-select bootstrap-selectpicker


【解决方案1】:

似乎是bootstrap-select必须重新呈现并在动态加载选项时刷新

$('.selectpicker').selectpicker('render');
$('.selectpicker').selectpicker('refresh');

尝试在成功函数回调的最后一行添加这两行

【讨论】:

  • 即使添加了这个,我仍然面临问题
【解决方案2】:

因此,当您使用 selectpicker 类时,它将使用 SAME CLASS 与您的选择元素创建按钮元素兄弟姐妹。因此,当您仅针对类时,它将同时更新它们。在附加部分使用选择器:$(select.country-list)。它只会更新选择元素。它对我有用。

$.ajax({
        url: serverName + "api/v1/get/countrylist",
        type: 'GET',
        headers: {
                "Content-Type": "application/json",
                "Authorization": "Basic " + basicKey,
                "x-access-token": xAccessToken

        },
        success: function(response){
             // console.log("visa-response: "+ response);
                var countryArr = [];
        response.forEach(function(item){
                countryArr.push({"country": item.country, "fee": item.fee});
             // console.log("my country " + item.country)
        })
        //console.log("countryArr-response: "+ countryArr[1].country);
        countryArr.forEach(function(item){
                $('select.country-list').append('<option class="'+item.fee + '"' +'data-tokens="'+ item.country+'">' + item.country +'</option>')
        })
    
        $('.selectpicker').selectpicker();
        },
        error: function (exception) {
                console.log(exception);
        }
});

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-05-04
    • 2019-05-28
    • 2019-07-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-20
    相关资源
    最近更新 更多