- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
验证失败后。这些值被闪现到字段中。
现在,我正在尝试使用旧输入来显示用户添加数据的所有动态字段。因此,我使用一个名为“name”的数组并循环遍历它们以确定数组中存储了多少个名称。这决定了我需要显示的字段数。但我的领域是一个选择领域。这已经在数组中检查选择了哪个字段。
因此,例如,用户从名为“姓名”的字段中选择“Jan”。使用动态字段,添加一个新字段。此处用户选择“Piet”。他提交了,但是他在表单的其他地方犯了一个错误,验证失败。现在,我在这两种情况下显示的两个选择字段(“名称”)都是 Piet,而不是 piet 和 Jan。我还需要按“添加任务”按钮才能显示第二个字段。
我想我需要添加一些唯一 ID。但是我不知道我该怎么做,因为我已经在一个数组中为选择选项工作了。感谢您的输入
@if( old('name') )
{{ $i=0 }}
@foreach( old('name') as $field)
{{ $i++ }}
<div id="dynamicFields">
<!-- Start row -->
<div class="row">
<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">
### Name field
<!-- First time Jan is selected second time Piet is select but after failed validation. The form displays always Piet -->
<div class="flex-fill p-2">
<select class="form-control showName" id="selectNameType0" name="name[]" onchange="showType(0)">
<option value="Jan" {{ in_array('Jan', old('name') ?? [] ) ? 'selected' : '' }}>Jan</option>
<option value="Piet" {{ in_array('Piet', old('name') ?? [] ) ? 'selected' : '' }}>Piet</option>
<option value="Tom" {{ in_array('Tom', old('name') ?? [] ) ? 'selected' : '' }}>Tom</option>
<option value="Dean" {{ in_array('Dean', old('name') ?? [] ) ? 'selected' : '' }}>Dean</option>
<option value="Bert" {{ in_array('Bert', old('name') ?? [] ) ? 'selected' : '' }}>Bert</option>
</select>
</div>
</div>
</div>
<div class="col-2">
<div class="d-flex">
<div class="p-1">
<label class="p-2" for="type" id="showTypeLabel0" 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="showType0" name="type[]" style="display: none;">
<option value="Operator" {{ in_array('Operator', old('type') ?? [] ) ? 'selected' : '' }}>Operator</option>
<option value="Analysist" {{ in_array('Analysist', old('type') ?? [] ) ? 'selected' : '' }}>Analysist</option>
</select>
</div>
</div>
</div>
</div> <!-- End row -->
<!-- Start row -->
<div class="row mb-4">
<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> <!-- End row -->
</div> <!-- End dynamicFields -->
@endforeach
@endif
<div class="row showName" style="margin: 10px;">
<div class="col-4 offset-4">
<input type="button" name="submit" id="submit" class="btn btn-success btn-block addmore" value="Add Task" />
</div>
</div>
$(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--;
})
});
最佳答案
确实需要添加一个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
问题:我还需要按“添加任务”按钮才能显示第二个字段。
=> 您可能默认隐藏您的字段,仅当单击字段出现时。在您的 jQuery 中删除此部分。
关于javascript - 旧输入数组和动态字段 - Laravel - Blade,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57872319/
我知道 Laravel 的 Blade 模板位于/resource/views 目录中。它的扩展名是 .blade.php 。 我的问题是我已经为前端设计人员设置了一个单独的 repo 来处理 bla
我知道 Laravel 的 Blade 模板位于/resource/views 目录中。它的扩展名是 .blade.php 。 我的问题是我已经为前端设计人员设置了一个单独的 repo 来处理 bla
在我的数据库中,我保存包含 Blade 标记的文本,例如: Hello {!! $name !!} how are you today. 我将此文本传递到变量 $text 中的电子邮件模板。在我使用的
我想从3个表构建 Blade View : “inputs_details”-字段:article_type(值:“p”代表产品,'s'代表服务),article_id,...。 “产品”-字段:ID
我正在使用 Laravel 5.1。我正在尝试将 Blade 指令 (@extend) 与我的自定义 Blade 指令一起使用。 Blade::directive('base', function()
我的 Blade 中有一个表格,其中包含 2 个日期供用户选择,例如: {{csrf_field()}} From
我正在尝试使用表单生成器创建一个按钮 {!! Form::button(' 'yourstyle']); 关于php - 在 Blade 代码中插入 Blade 代码,我们在Stack Overflo
我正在渲染一个页面,该页面主要是 Laravel 中带有 view::make 的表单,它正在崩溃,导致 ERR_CONNECTION_RESET。经过长时间的调查和许多红鲱鱼,我开始从 Blade
我有以下路径的部分 View 。 /views/acp/review/check.details.blade.php 我如何使用 Blade 包含这样的文件,因为如果我这样做 @include('vi
我继承了一个 Laravel 项目,该项目有许多 Blade 文件, Blade 文件中的标签内带有 javascript。问题是有很多重复的 JS 逻辑,所以我想提取 JS 并创建 JS 文件以包含
我正在为 laravel 项目中基于 Blade 的组件创建文档,并希望将语法突出显示的 Blade 代码片段显示为文档的一部分,就像这样: 我已经安装了 graham-campbell/markdo
在我激活 Facade 的 Lumen 应用程序中($app->withFacades() in app's bootstrap)我无法在 Blase 模板中使用 URL 类。 {{ URL::pre
我正在为 laravel 项目中基于 Blade 的组件创建文档,并希望将语法突出显示的 Blade 代码片段显示为文档的一部分,就像这样: 我已经安装了 graham-campbell/markdo
在我激活 Facade 的 Lumen 应用程序中($app->withFacades() in app's bootstrap)我无法在 Blase 模板中使用 URL 类。 {{ URL::pre
有人知道是否可以延长 child Blade 吗? 我的应用程序有一个通用的布局模板,然后每个页面都从该模板@extends。每个页面都可以根据需要为其他 HTML block (例如模态)引入一系列
我试图在 blade 中设置一个 php 变量。它可以在同一个 Blade 上工作,而不是在其他 Blade 上设置 var。 例子: header.blade.php @if(isset($comp
情况: 我正在制作一个侧面菜单,该菜单通过从表 (MySQL) 中获取数据来填充。 每代表菜单的一项: item 1 item 2 item 3 等等... 问题: 当我看到它的 Blade 时一切正
我在主视图中有 3 个元素 标题(导航栏) 内容 页脚 在 app.blade.php 中 @include('header') @yield('content')
我想将输入值从一个 Blade 文件传递到另一个 Blade 文件。 我是 PHP Laravel 的新手,在尝试使用它时遇到错误。 我认为我的语法在这里是错误的。有人可以帮忙吗? channel .
所以我的困境是这样的。 Email: info@example.com 正在作为 Blade 代码处理,不会在我的 Laravel 4 框架中的响应式 Bootstrap 网页中调整大小。 关于如何让
我是一名优秀的程序员,十分优秀!