我正在尝试使用单选按钮编辑数据但是每当我尝试编辑它时,结果返回都是空白的。我搜索了与他相似的其他人,但它仍然无法工作(例如:Edit Radio Button / Dropdown list)
我可以在这里做错了吗?
当我在它上面使用dd函数时,它会返回给我:
"gender" => null
但之前我用过这个,我可以得到我的结果<input type="text" name="gender" value="{{ $object->gender }}" class="form-control">
这是我的代码:
<form class="form-horizontal" method="post" action="{{ url('/user/show/'.$object->id) }}">
{{ method_field('PUT') }}
{{ csrf_field() }}
<label class="col-md-2">Gender:</label>
<div class="col-md-6">
<input type="radio" name="gender" value="{{$object->male}}"> Male<br>
<input type="radio" name="gender" value="{{$object->female}}"> Female<br>
</div>
<div class="form-group">
<div class="col-md-6-offset-2">
<input type="submit" class="btn btn-primary" value="Save">
</div>
</div>
</form>
控制器:
public function edit($id){
$object = user_info::find($id);
return view('edit', compact('object'));
}
public function update(Request $request, $id){
$object = user_info::find($id);
$object->gender = $request->input('gender');
//$object->update();
dd($object);
return redirect('/home');
}
答案 0 :(得分:4)
问题是您还没有在表单中选择任何选项。我建议你将选项包装在select标签内。您必须使用if语句(条件将在此处查找)检查值是否为true然后打印出check =&#34; checked&#34;表示选中了单选按钮。
这是代码:
下拉列表
<form class="form-horizontal" method="post" action="{{ url('/user/show/'.$object->id) }}">
{{ method_field('PUT') }}
{{ csrf_field() }}
<label class="col-md-2">Gender:</labe
<div class="col-md-6">
<select name="gender" id="gender" class="form-control" required>
<option value="">Choose....</option>
<option value="Male" {{ $object->gender == 'Male' ? 'selected' : ''}}>Male</option>
<option value="Female" {{ $object->gender == 'Female' ? 'selected' : ''}}>Female</option>
</select>
</div>
<div class="form-group">
<div class="col-md-6-offset-2">
<input type="submit" class="btn btn-primary" value="Save">
</div>
</div>
</form>
Radiobutton
<form class="form-horizontal" method="post" action="{{ url('/user/show/'.$object->id) }}">
{{ method_field('PUT') }}
{{ csrf_field() }}
<label class="col-md-2">Gender:</labe
<div class="col-md-6">
<input type=radio name="Gender" value="Male" {{ $object->gender == 'Male' ? 'checked' : ''}}>Male</option>
<input type=radio name="Gender" value="Female" {{ $object->gender == 'Female' ? 'checked' : ''}}>Female</option>
</div>
<div class="form-group">
<div class="col-md-6-offset-2">
<input type="submit" class="btn btn-primary" value="Save">
</div>
</div>
</form>
答案 1 :(得分:1)
<div class="col-md-6">
<input type="radio" name="gender" value="male"> Male<br>
<input type="radio" name="gender" value="female"> Female<br>
</div>
使用对象可能不是您最好的方法。我会使用“男性”和“女性”的静态字符串值。 Here是Laravel针对性别的单选按钮方法的指南。
答案 2 :(得分:0)
<div class="form-group">
<input name="gender" id="gender" value="male" type="radio" />Male
<input name="gender" id="gender" value="female" type="radio" />Female
<script type="text/javascript">
document.forms['form'].elements['gender'].value='{{$register->gender}}'
</script>