【发布时间】:2021-10-29 12:36:46
【问题描述】:
我有一个选择,一个表单,更改(选择某个选项),我想要另一个选择变为可见。第二个选择使用 select2。为此,我使用 Alpine JS(在 Laravel 中)。
问题是第二个选择在页面加载时不可见,并且在文档就绪时初始化 select2 的查询代码未加载。
当我在第一个选择中选择特定值时,第二个选择显示,但它的宽度很小。
如何动态初始化 select2?
<div x-data="{vervoerswijze:1}">
<div class="mt-4">
<select x-model='vervoerswijze' class="text-gray-500 form-select block w-full mt-1 shadow-sm rounded-md border-gray-300 focus:border-indigo-300 focus:ring focus:ring-indigo-200 focus:ring-opacity-50">
<option>Kies een optie</option>
<option value="1">Winkel</option>
<option value="2">Met gebruiker(s)</option>
</select>
</div>
<div x-show="vervoerswijze == 2" class="mt-4 w-full" wire:ignore>
<x-jet-label class="text-gray-500 font-normal text-base mb-4" for="Gebruikers" value="{{ __('Selecteer gebruikers') }}" />
<select wire:model="gebruikerinwagen" class="select2 text-gray-500 form-select block w-full mt-1 shadow-sm rounded-md border-gray-300 focus:border-indigo-300 focus:ring focus:ring-indigo-200 focus:ring-opacity-50" multiple="multiple">
@foreach ($gebruikers as $gebruiker)
<option value="{{ $gebruiker->id }}">{{ $gebruiker->first }} {{ $gebruiker->last }}</option>
@endforeach
</select>
</div>
</div>
<script>
$(function(){
$('.select2').select2().on('change', function(){
@this.set('gebruikerinwagen', $(this).val());
});
})
</script>
【问题讨论】:
标签: laravel jquery-select2 alpine.js