前后台数据交互碰到复选框的问题,因为后台传的只是value,如果是直接创建复选框你给它赋值value=true是没有显示效果的,需要额外给他添加属性。
比我我从后台获取数据,添加到table中
"<td><input type='checkbox' value='"+da.P1[i].aa+"' name='check"+i+"'/></td>"+
"<td><input type='checkbox' value='"+da.P1[i].bb+"' name='checks"+i+"'/></td>"+
table 表格,数据有多组,所以我用循环输出,先给每个checkbox一个name属值,然后再判断value是不是为true,为true就改变状态。这里要用prop的方式添加,不能使用attr(具有 true 和 false 两个属性的属性,如 checked, selected 或者 disabled 使用prop(),其他的使用 attr(),再jQuery1.9版本中使用attr获取checkbox的值都是undefined,在1.8.3版本中结果是 checked 和 undefined)。
我在这的做法是先把table表格循环出来,再改变状态,使用如下代码
if(da.P1[i].aa==true){
$(":checkbox[name='check"+i+"']").prop("checked",true);
};
if(da.P1[i].bb==true){
$(":checkbox[name='checks"+i+"']").prop("checked",true);
};