我有包含多个复选框的表单,我希望在单击编辑按钮后使用jquery根据数据库中的值检查复选框?提前谢谢..
以下是观点:
<form id="frmAddBand" name="frmAddBand" method="post" action="" onsubmit="return (checkc() == 1)">
<fieldset>
<ol>
<li>
<label >Band Code <em>*</em></label>
<input id="bandCode" type="text" name="bandCode" />
<span id="code_status" style="color:red;" ></span>
</li>
<li>
<label >Band Name<em>*</em></label>
<input id="bandName" type="text" name="bandName" />
</li>
<li>
<label >Designation<em>*</em></label><br/><br/><div style="height:100px;background-color:#fff;overflow:auto;"><br/><?php $des_code = array_keys($designation);
$des_name = array_values($designation);
for($i=0;$i<count($des_code);$i++){?>
<input type="checkbox" name="des" id="des" value="<?php echo $des_code[$i];?>"/><span style="font-size:12px;"><?php echo $des_name[$i];?></span><br/><br/><?php }?>
</div>
</li>
<li class="required new">
<input type="text" id="demo" name="demo" />
<em>*</em> Required field </li>
</ol>
<p><input id="click_submit" name="click_submit" Value="Save" type="button">
<input id="click_cancel" name="click_cancel" Value="Cancel" type="button" >
</p>
</fieldset>
</form>
控制器:
public function band_edit($id)
{
$this->load->helper('url');
$this->load->database();
$this->load->model('Ohs_Bandmodel');
$data = $this->Ohs_Bandmodel->get_by_id($id );
echo json_encode($data);
}
脚本:
function edit_band(id)
{
$("#frmAddBand")[0].reset();
//Ajax Load data from ajax
$.ajax({
url : "<?php echo base_url(); ?>index.php/Ohs_Cband/band_edit/" + id,
type: "GET",
dataType: "JSON",
success: function(data)
{
var b=data.desig;
var arr = b.split(",");
//alert(arr[1]);
for(i=0;i<arr.length;i++){
$('input[type=checkbox]').each(function(){
//alert(arr[i]);
if($(this).val()==arr[i]){
$(this).prop('checked', true);
}
else{
$(this).prop('checked', false);
}
})
}
$('[name="bandCode"]').val(data.band_code);
$('[name="bandName"]').val(data.band_name);
$('[name="click_submit"]').val('Update');
$('[name="bandCode"]').attr("readonly", true);
$('[name="bandCode"]').css('background-color' , '#DEDEDE');
//$("#click_cancel").attr('visibility', 'visible');
$('#click_cancel').show();
},
error: function ()
{
//alert('Error get data from ajax');
$('[name="bandCode"]').attr("readonly", false);
$('[name="bandCode"]').css('background-color' , '#FFF');
$('[name="bandCode"]').removeAttr("disabled");
$("#Notify").data("mtype","E");
$("#Notify").data("msg","error in record.")
$('#Notify').trigger('click');
//$("#click_cancel").attr('visibility', 'hidden');
}
});
}
当我点击编辑记录时,所有工作正常,但不是根据记录中的数据检查2复选框,它只检查1个复选框。任何帮助将不胜感激。谢谢
答案 0 :(得分:0)
检查/取消选中jQuery中的复选框:
1 - 检查
$("yourCheckboxId").prop("checked",true);
2 - 取消选中
$("yourCheckboxId").prop("checked",false);
只需在逻辑中使用此代码示例