Laravel 中 "Chosen select" 的问题

Problems with "Chosen select" in Laravel

你好,你好吗?我对动态 select 感到不便,我在其中收取 "matriz",并且取决于第二个 select 向我收取 "ensayos" 的费用。在 "create" 表格中没有问题,问题在 "edit" 表格中,因为当我开始编辑时,我必须在 "matriz" 中显示 selected 字段的数据因此,如果我必须更改分析,请不要根据预加载的 "matriz" 对这些进行 selection。例如,如果我在输入示例时输入 "matriz": Water,当我输入编辑表单时,以便 "ensayos" 的 selection 进行更改,我必须 select 另一个 "matriz" (例如:食物)和 select "Water" 以便在 "ensayos" 字段中再次生成过滤器并能够 select只有水测试。

我留下代码让你看看我说的是什么:

<div class="form-group">
   <label for="matriz">Matriz:</label><br>
     <select class="chosen-select" name="matriz_id" id="matriz">
        <option disabled selected>Seleccionar Matriz</option>
           @foreach($matrizs as $matriz)
               <option value="{{$matriz->id}}" @if(($muestra->matriz_id) == ($matriz->id)) selected="selected" @endif>{{$matriz->matriz}}</option>
           @endforeach
     </select>
</div>

<div class="form-group ml-4">
   {!! Form::Label('ensayo_id', 'Ensayos:') !!}
       <select class="chosen-select" name="ensayo_id[]" id="ensayos" multiple="multiple" style="width: 950px">
           @forelse($selects as $sel)
               @foreach($ensayos as $ensayo)
                   <option value="{{$ensayo->id}}" @if(($sel->ensayo_id) == ($ensayo->id)) selected="selected" @endif>{{$ensayo->ensayo}}</option>
               @endforeach
           @empty
               @foreach($ensayos as $ensayo)
                   <option value="{{$ensayo->id}}">{{$ensayo->ensayo}}</option>
               @endforeach
           @endforelse
       </select>
</div>

这是 jQuery 中的代码:

$('#matriz').change(function(e){
    var matriz_id = e.target.value;
    $.get('/dsa/public/lab/muestras/'+matriz_id+'/ensayos', function(data){ 
        $('#ensayos').empty();       
        var html_select = '';
        for (var i=0; i<data.length; ++i)
        html_select += '<option value="'+data[i].id+'">'+data[i].ensayo+'</option>';
        $('#ensayos').html(html_select);
        $('#ensayos').chosen();
        $('#ensayos').trigger("chosen:updated");   
    });
});

我试图改变:

$('#matriz').change(function(e)

更改为:

$('#matriz').ready

但没用。

你能想到我该如何解决这个问题吗?来自已经非常感谢

如果我对你的问题的理解正确,我想,当页面加载完成并且字段 matriz 中设置了正确的值时,你可以加载 ensayos 的条目。 与您的代码相比,我只更改了两行。 运行 加载文档时的这段代码:

$(document).ready(function() {

然后读取matriz

的选择值
var matriz_id = $('#matriz').val();

试试这个代码:

$(document).ready(function() {
    var matriz_id = $('#matriz').val();
    $.get('/dsa/public/lab/muestras/'+matriz_id+'/ensayos', function(data) { 
       // here your code as above
       ...
});