php - 为什么我的表单(收音机)在 laravel 集体中默认检查最后一个元素
问题描述
我不知道为什么我的单选按钮默认选中 laravel 集合中的最后一个元素,在我的情况下,单选按钮用于选择性别,每个元素都包含代表性别的字母“L”或“P”,提前致谢,
<div class="form-group">
{{-- <label for="jenisKelamin" class="control-label">Jenis Kelamin</label> --}}
{{Form::label('jenisKelamin','Jenis Kelamin',['class'=>'control-panel'])}}
<div class="form-check">
{{-- <label>
<input type="radio" name="jenisKelamin" id="jenisKelamin" value="L" class="form-control" placeholder="Jenis Kelamin" >Laki-Laki</label> --}}
{{Form::radio('jenis_kelamin','L',['class'=>'form-check-input'])}}
<label class="form-check-label">Laki-Laki</label>
</div>
<div class="form-check">
{{Form::radio('jenis_kelamin','P',['class'=>'form-check-input'])}}
<label class="form-check-label">Perempuan</label>
</div>
</div>
@if($errors->has('jenis_kelamin'))
<br>
<div class="alert alert-danger">{{ $errors->first('jenis_kelamin') }}</div>
@endif
</div><br>
解决方案
我假设您正在使用该laravelcollective/html
软件包。当我在 Internet 浏览器中查看原始 HTML 输出时,我看到的是:
<div class="form-group">
<label for="jenisKelamin" class="control-panel">Jenis Kelamin</label>
<div class="form-check">
<input checked="checked" name="jenis_kelamin" type="radio" value="L">
<label class="form-check-label">Laki-Laki</label>
</div>
<div class="form-check">
<input checked="checked" name="jenis_kelamin" type="radio" value="P">
<label class="form-check-label">Perempuan</label>
</div>
</div>
</div><br>
两个无线电输入都被检查(有checked="checked"
)。由于两者具有相同的名称,这意味着一次只能检查一个,因此只能在屏幕上检查最后一个。
让我们看一下Form::radio
函数的源代码。它可以\vendor\laravelcollective\html\src\FormBuilder.php
在您的项目或Github 存储库中找到。在这里,我们看到该函数具有此标头:
public function radio($name, $value = null, $checked = null, $options = [])
似乎第三个参数应该是一个布尔值,确定检查状态,任何附加选项作为第四个参数。这也显示在文档中。
在您的代码段中,它看起来像这样:
{{Form::radio('jenis_kelamin','L', true, ['class'=>'form-check-input'])}}
{{Form::radio('jenis_kelamin','P', false, ['class'=>'form-check-input'])}}
推荐阅读
- webpack - qgrid 的 jupyter labextension 安装在可选依赖项上失败(Windows)
- angular - 离子电容器 Admob 集成
- mysql - LEFT JOIN 后的搜索列
- android - 构建android时如何完全删除未使用的资源?
- javascript - 如何在多个网页上保持计数
- python - jupyter nbconvert:转换为 markdown 和/或 html,不包括标记为“skip”的幻灯片
- ios - 如何阻止 SwiftUI 重新加载我通过 UIViewRepresentable 使用的 WKWebView 页面?
- javascript - 如何让 innerHTML 计数从当前项目中获取其值
- java - 除非项目被保存,否则 Eclipse 错误不会出现或消失
- sql - 我想编写一个查询来显示每个提供者的单行总数