【发布时间】:2020-06-28 22:49:02
【问题描述】:
我有以下 for 循环
@for($i = 0; $i < $contactAmount; $i++)
<div class="form-group row">
<label for="firstname" class="col-md-4 col-form-label text-md-right">voornaam</label>
<div class="col-md-6">
<input id="firstname" type="text" class="form-control @error('firstname.0') is-invalid @enderror" name="firstname[]" value="{{ old('firstname.0') }}" autofocus>
@error('firstname.0')
<span class="invalid-feedback" role="alert">
<strong>{{ $message }}</strong>
</span>
@enderror
</div>
</div>
@endfor
但如果我用 {{ $i }} 替换硬编码的“0”,我的验证将不再有效。那么如何调用我的整数并在 laravel 辅助函数中使用它呢?
@for($i = 0; $i < $contactAmount; $i++)
<div class="form-group row">
<label for="firstname" class="col-md-4 col-form-label text-md-right">voornaam</label>
<div class="col-md-6">
<input id="firstname" type="text" class="form-control @error('firstname.{{ $i }}') is-invalid @enderror" name="firstname[]" value="{{ old('firstname.'. $i) }}" autofocus>
@error('firstname.{{ $i }}')
<span class="invalid-feedback" role="alert">
<strong>{{ $message }}</strong>
</span>
@enderror
</div>
</div>
@endfor
【问题讨论】:
-
@error('firstname.'.$i)将是正确的语法。@error()已经是 PHP,所以添加{{ }}(打开/关闭 PHP)是错误的。你为old()助手做的正确:old('firstname.'. $i) -
啊,谢谢它成功了!我只是在尝试,但不确定什么可行,什么不可行
-
需要一点时间来适应,这是肯定的。知道你什么时候在 PHP 领域和 HTML 领域工作需要练习。 :)
标签: laravel validation for-loop laravel-blade helper