Javascript 旧输入阵列和动态字段-Laravel-刀片

Javascript 旧输入阵列和动态字段-Laravel-刀片,javascript,jquery,laravel,select,dynamic,Javascript,Jquery,Laravel,Select,Dynamic,验证失败后。这些值将闪现到字段中 现在,我尝试使用旧的输入来显示用户添加数据的所有动态字段。 因此,我使用一个名为name的数组,并循环遍历它们来确定数组中存储了多少个名称。这决定了需要显示的字段数。 但我的领域是一个选择领域。这已经在数组中检查要选择的字段 例如,用户从名为name的字段中选择Jan。使用动态字段,将添加一个新字段。在这里,用户选择Piet。他提交了,但他在表单的其他地方犯了错误,验证失败。 现在,我的两个选择字段名称在这两种情况下都显示为Piet,而不是Piet和Jan。我还

验证失败后。这些值将闪现到字段中

现在,我尝试使用旧的输入来显示用户添加数据的所有动态字段。 因此,我使用一个名为name的数组,并循环遍历它们来确定数组中存储了多少个名称。这决定了需要显示的字段数。 但我的领域是一个选择领域。这已经在数组中检查要选择的字段

例如,用户从名为name的字段中选择Jan。使用动态字段,将添加一个新字段。在这里,用户选择Piet。他提交了,但他在表单的其他地方犯了错误,验证失败。 现在,我的两个选择字段名称在这两种情况下都显示为Piet,而不是Piet和Jan。我还需要按addtask按钮来显示第二个字段

我想我需要添加一些唯一的ID。但是我不知道如何才能做到这一点,因为我已经在一个数组中为select选项工作了。 谢谢你的意见

刀片模板。 动态字段的jQuery
实际上,您需要添加一个ID

您也可以在代码的其余部分使用此方法

@foreach( old('name') as $i => $field)

    <select class="form-control showName" id="selectNameType0" name="name[]" onchange="showType(0)">
        <option value="Jan" {{ in_array('Jan', old('name')[$i] ?? [] ) ? 'selected' : '' }}>Jan</option>
        <option value="Piet" {{ in_array('Piet', old('name')[$i] ?? [] ) ? 'selected' : '' }}>Piet</option>
        <option value="Tom" {{ in_array('Tom', old('name')[$i] ?? [] ) ? 'selected' : '' }}>Tom</option>
        <option value="Dean" {{ in_array('Dean', old('name')[$i] ?? [] ) ? 'selected' : '' }}>Dean</option>
        <option value="Bert" {{ in_array('Bert', old('name')[$i] ?? [] ) ? 'selected' : '' }}>Bert</option>
    </select>

@endforeach
问题:我还需要按AddTask按钮以显示第二个字段


=>默认情况下,您可能仅在单击字段时隐藏字段。在jQuery中删除此部分。

不会回答JS方面的问题,但请看一下LaravelCollective HTML,它使表单方面的工作变得更加轻松。
    $(document).ready(function() {
        // Start from 1
        var i = 1;
        // When button clicked
        $('.addmore').click(function(){
            i++;
            // add the following layout
            $('#dynamicFields').append('<div class="row removing'+i+'"><div class="col-2"><div class="d-flex"><div class="p-1"><label class="showName p-2" for="name" > Name</label></div></div></div><div class="col-4"> <div class="d-flex"><div class="flex-fill p-2"><select class="form-control showName" id="selectType'+i+'" onchange="showType('+i+')" name="name[]"><option></option><option value="Jan">Jan</option><option value="Piet">Piet</option><option value="Tom">Tom</option><option value="Bert">Bert</option><option value="Dean">Dean</option></select></div></div></div><div class="col-2"><div class="d-flex"><div class="p-1"><label class="p-2" id="showNameTypeLabel'+i+'" for="type" style="display: none;"> Type</label></div></div></div><div class="col-4"> <div class="d-flex"><div class="flex-fill p-2"><select class="form-control" id="showNameType'+i+'" name="type[]" style="display: none;"><option></option><option value="Operator">Operator</option><option value="Analysist">Analysist</option></select></div></div></div></div><div class="row removing'+i+'"><div class="col-2"><div class="d-flex"><div class="p-1"><label class="showName p-2" for="date"> Date</label></div></div></div><div class="col-4"> <div class="d-flex"><div class="flex-fill p-2"><input class="form-control showName" type="date" name="date[]"></div></div> </div><div class="col-2"><div class="d-flex"><div class="p-1"><label class="showName p-2" for="time"> Time</label></div></div></div><div class="col-4"> <div class="d-flex"><div class="flex-fill p-2"><input class="form-control showName" type="time" name="time[]" ></div></div> </div></div><div class="row removing'+i+' showName" style="margin: 10px;"><div class="col-4 offset-4"><button type="button" class="btn btn-danger btn-block remove-fields">Remove  Moment</button></div></div>');
            });
        // Removing fields
        $('#dynamicFields').on('click', '.remove-fields', function(){
            $('.removing'+i).remove(); i--;
        })
    });

@foreach( old('name') as $i => $field)

    <select class="form-control showName" id="selectNameType0" name="name[]" onchange="showType(0)">
        <option value="Jan" {{ in_array('Jan', old('name')[$i] ?? [] ) ? 'selected' : '' }}>Jan</option>
        <option value="Piet" {{ in_array('Piet', old('name')[$i] ?? [] ) ? 'selected' : '' }}>Piet</option>
        <option value="Tom" {{ in_array('Tom', old('name')[$i] ?? [] ) ? 'selected' : '' }}>Tom</option>
        <option value="Dean" {{ in_array('Dean', old('name')[$i] ?? [] ) ? 'selected' : '' }}>Dean</option>
        <option value="Bert" {{ in_array('Bert', old('name')[$i] ?? [] ) ? 'selected' : '' }}>Bert</option>
    </select>

@endforeach