Laravelにてcheckboxの入力があるかどうかのバリデーションを行いたいです。
現在は以下のように記述しています。
php
1$checked = ''; 2// $hoge_data_listは配列でDBに入っている値が格納されている 3if (in_array($hoge->id1, $hoge_data_list)) { 4 $checked1 = 'checked="checked"'; 5} 6if (in_array($hoge->id2, $hoge_data_list)) { 7 $checked2 = 'checked="checked"'; 8} 9if (in_array($hoge->id2, $hoge_data_list)) { 10 $checked3 = 'checked="checked"'; 11} 12<input type="checkbox" name="hoge[]" value="{{$hoge->id1}}" {{$checked1}}><label>{{$hoge->name1}}</label> 13<input type="checkbox" name="hoge[]" value="{{$hoge->id2}}" {{$checked2}}><label>{{$hoge->name2}}</label> 14<input type="checkbox" name="hoge[]" value="{{$hoge->id3}}" {{$checked3}}><label>{{$hoge->name3}}</label>
チェックボックスがすべて入力されていない場合、エラーになるようなバリデーション自体はできているのですが、$hoge_data_listはDBから取得してきたidのリストが格納されているため、チェックを全部外してバリデーションで戻ってきたときに$checked1〜$checked3の値は初期表示時と変わらないので、バリデーション後もチェックボックスの状態が初期表示時と変わりません。
バリデーション後は、チェックボックスが全部外れているようにしたいのですが...
どなたかご教示ください。よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/11/29 13:44