[英]Laravel Multi-select dropdown value not display in edit form
我有這樣的表用戶和分支
id name branch_code
1 ABC ["011","012","013","014"]
2 DEF ["014"]
表分支
id branch_code branch_name
1 011 XXX
2 012 YYY
3 013 ZZZ
4 014 WWW
創建新用戶時,BRANCH 有多選下拉菜單,因此一個用戶可以選擇多個分支。
我可以將多選下拉列表保存到 branch_code 列中的表用戶中。 但是我在編輯表單中顯示所選值時遇到問題
這是編輯表單的多選下拉菜單
<select class="form-control" name="branch[]" id="users" multiple>
@foreach ($branch as $branch)
<option @if ($branch->branch_code==$user->branch_code)
selected
@endif value="{{$branch->branch_code}}">
{{$branch->branch_name}}
</option>
@endforeach
</select>
編輯控制器
public function edit($id)
{
$branch = Branch::where('status','1')->get();
$user = User::where('id',$id)->first();
return view('admin.edit', compact('user','branch'));
}
在編輯表單中,我想在下拉列表中顯示所有帶有選定分支和未選定分支的分支。 對於選定的分支,它將用“選定”注釋或類似的東西突出顯示。 但現在它只顯示所有分支,對選定的分支沒有備注
$user->branch_code
是數組或數組的 json 字符串。
如果是 json 字符串,則$user->branch_code = json_decode($user->branch_code)
首先。
當您擁有數組時 - 您可以執行以下操作:
<option
@if (in_array($branch->branch_code, $user->branch_code)) selected @endif
value="{{$branch->branch_code}}"
>
{{$branch->branch_name}}
</option>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.