HTML select - multiple=multiple在cakephp中创建额外的隐藏字段



我的表单中有一个select-option字段:

<div>
 <?php echo $this->Form->input('employee_id', array('label' => 'Hi','multiple'=>true,'id'=>'multiselect', 'options' => $employee));?>
</div>

但是当我检查页面源时,它在我的表单中产生了一个额外的hidden字段。

<div>
<div class="input select">
<label for="multiselect">Hi</label>
<input type="hidden" name="data[Participant][employee_id]" value="" id="multiselect_"/>
<select name="data[Participant][employee_id][]" multiple="multiple" id="multiselect">
<option value="1">A1</option>
<option value="2">A2</option>
<option value="3">A3</option>
<option value="4">A4</option>
</select>
</div>
</div>

为什么?因此,我无法在POST数据中获取员工id数组。

这样,如果没有选择任何项,您仍然会得到一个空元素。

这与复选框上方的空白项的想法类似——如果复选框未被选中,则表单数据仍然被发布,只是具有空白值。

相关内容

最新更新