将selectpicker添加到动态输入

时间:2017-03-04 19:23:11

标签: jquery laravel laravel-5.2

我正在使用Laravel。在我的控制器中,我将一系列问题传递给我。然后我展示了这样的东西

@foreach($questions as $q)
    <div class="col-xs-12">
        <input type="{{ $q["type"] }}" class="form-control {{ $q["class"] }}">
    </div>
@endforeach

现在,其中一些输入具有类型选择,然后将一个类设置为selectpicker。现在通常,设置selectpicker我会使用类似这样的东西

$(function () {
    $('.selectpicker').selectpicker();
});

但是因为它在DOM之后被添加它不起作用。我在网上搜索并尝试了这样的建议

$('body').on('focus',".selectpicker", function(){
    if( $(this).hasClass('selectpicker') === false )  {
        $(this).selectpicker({
            liveSearch: true
        });
    }
});

然而,上述似乎并不奏效。如何让selectpicker处理动态添加的元素?

由于

1 个答案:

答案 0 :(得分:1)

您不能将输入元素与type = select一起使用,即此html不起作用:

<input type="select" class="form-control selectpicker">

选择元素的正确html代码是:

<select class="form-control selectpicker">
   <option>Option 1</option>
   <option>Option 2</option>
   <option>Option 3</option>
</select>