Codeigniter set_select не работает с проверкой формы - PullRequest
0 голосов
/ 21 января 2019

Я использую проверку формы codeigniter, чтобы убедиться, что опция выбора имеет значение. У меня были проблемы с передачей значения выбранного параметра в мой контроллер, поэтому я создал скрытый вход и использовал jquery для передачи значения on_change. Set select works, чтобы заново заполнить опцию select, но не передает значение в мой скрытый ввод. Я новичок и не знаю, какой путь лучше выбрать? Есть ли способ повторно передать значение из моей опции выбора в скрытый ввод при неудачной проверке формы?

Вот мой взгляд:

$('#transfer_from_selector').on('change', function () {
var val = this.value;
$('#transfer_from_input').val(this.value);
});   

<select class="form-control" id="transfer_from_selector" name="transfer_from_selector">
                    <option value="" disabled="" selected="selected" class="">Transfer From</option>
                    <option value="1" <?php echo set_select('transfer_from_selector', 1); ?>class="">Richfield</option>
                    <option value="2" <?php echo set_select('transfer_from_selector', 2); ?>class="">Eagan</option>
</select>  

<input type="hidden" id="transfer_from_input" name="transfer_from_input" value=""> 

Вот мой контроллер:

$this->form_validation->set_rules('transfer_from_input', 'Transfer From', 'required|differs[transfer_to_input]');
$data = array(
    'transfer_from' => $this->input->post('transfer_from_input'),
);

Ответы [ 2 ]

0 голосов
/ 21 января 2019

Я получил его, по какой-то причине я назначил идентификатор, а не имя, поэтому он не передал значение правильно.Не нужно делать имя массива.Я удалил код jquery и просто передал значение select моему контроллеру.

0 голосов
/ 21 января 2019

не нужно писать скрытое поле. используйте aaray с именем для выбора option.try это, я надеюсь, это поможет вам.

<select class="form-control" id="transfer_from_selector" name="transfer_from_selector[]">
                    <option value="" disabled="" selected="selected" class="">Transfer From</option>
                    <option value="1" <?php echo set_select('transfer_from_selector', 1); ?>class="">Richfield</option>
                    <option value="2" <?php echo set_select('transfer_from_selector', 2); ?>class="">Eagan</option>
</select> 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...