Я создал флажки в форме с помощью javascript:
<input type="checkbox" name="is_ok[]" /> <input type="checkbox" name="is_ok[]" /> <input type="checkbox" name="is_ok[]" />
Когда я проверяю 1-й и 3-й флажки и Input::get("is_ok")
форму, Input::get("is_ok")
возвращает мне:
['on', 'on']
Есть ли способ получить значение как ['on', null, 'on']
или ['on', 'off', 'on']
?
Заранее спасибо.
Эй присваивать некоторые значения user_id, product_id etc
как user_id, product_id etc
Что когда-либо было в вашем приложении.
Например, просмотр
<input type="checkbox" name="is_ok[]" value="1" /> <input type="checkbox" name="is_ok[]" value="2" /> <input type="checkbox" name="is_ok[]" value="3" />
Например, контроллер
<?php if(isset($_POST['is_ok'])){ if (is_array($_POST['is_ok'])) { foreach($_POST['is_ok'] as $value){ echo $value; } } else { $value = $_POST['is_ok']; echo $value; } } ?>
Вы получите массив выбранного флажка.
Надеюсь, поможет..
Я думаю, что у меня есть «хорошее» решение для этого (типа).
<input type="checkbox" name="is_ok[0]" /> <input type="checkbox" name="is_ok[1]" /> <input type="checkbox" name="is_ok[2]" />
(Принудительные индексы здесь)
В запросе:
$array = \Request::get("is_ok") + array_fill(0,3,0); ksort($array);
Это гарантирует, что (a) индексы галочки поддерживаются, как ожидалось. (б) пробелы заполняются при получении запроса.
Это неряшливо, но может работать.
ИМХО это лучшая практика:
В вашей миграции задайте поле db table для boolean и значение по умолчанию 0
$table->boolean->('is_ok')->default(0); {!! Form::checkbox('is_ok[]', false, isset($model->checkbox) ? : 0) !!}
по$table->boolean->('is_ok')->default(0); {!! Form::checkbox('is_ok[]', false, isset($model->checkbox) ? : 0) !!}
и если вы не используете коллектив laravel для форм, вы можете использовать vanilla php
<input type="checkbox" name="is_ok[]" value="<?php isset($model->checkbox) ? : 0; ?>" />