我有一个复选框,在CI中创建如下:
echo form_checkbox(array(
'name' => 'active',
'id' => 'active',
'value' => '1'
));
我还有其他字段,例如Name,它们已经应用了必要的字段验证。因此,当我将Name留空并勾选active
复选框时,它会显示名称错误。但它删除了对活动复选框的检查。我想保持活动复选框已选中。
我知道CI中的set_checkbox
方法,但不知道如何在上面使用它。如果是form_input
,我们只需使用set_value
,一切正常。但是使用set_checkbox
,它会返回完整的字符串checked="checked"
。因此,当我使用set_checkbox
和form_checkbox
组合如下时,它不起作用。
echo form_checkbox(array(
'name' => 'active',
'id' => 'active',
'value' => '1',
'checked' => set_checkbox('active', '1')
));
知道如何解决这个问题吗?
答案 0 :(得分:1)
您可以将其设置为
echo form_checkbox(array(
'name' => 'active',
'id' => 'active',
'value' => '1',
'checked' => ($this->input->post('active') && $this->input->post('active') == 1 )
));
如果你不在你的情况下使用($ this-> input-> post('active')&& ....),如果你不检查这个就会引发错误复选框并提交表单。
答案 1 :(得分:0)
form_checkbox上的checked属性接受TRUE / FALSE值。一个简单的比较,看看是否设置了值。
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
//Assigns UIDatePickerView and UIPickerView cells
if(indexPath.section == 0 && mainOptions[indexPath.row] == mainOptions[0]) {
return clientNameInput as UITableViewCell
} else if(indexPath.section == 0 && mainOptions[indexPath.row] == mainOptions[1]) {
return invoiceEmailInput as UITableViewCell
} else if(indexPath.section == 0 && mainOptions[indexPath.row] == mainOptions[2]) {
return invoiceAddressInput as UITableViewCell
} //etc....
未在此样式中使用set_checkbox方法。根据{{3}}
中的此示例,它打算在现有HTML中使用echo form_checkbox(array(
'name' => 'active',
'id' => 'active',
'value' => '1',
'checked' => ( $this->input->post('active') == 1 )
));