js接收后端数据回显checkbox打上勾

URL:https://blog.csdn.net/jaryle/article/details/53927998

js一般直接接收springmvc后端传递过来的数据,数据一般通过model过来,里面存放的是对象,js中一般不能处理对象数据,所以在controller层把对象数据进行重新封装成(字符串等js可以识别的数据),例如:controller传递过来的是一个包含多个id的list集合,里面存放的是对象,就需要在controller层对这个list集合进行遍历,获取每个id然后,使用字符串存取,然后通过model回传到js中,就可以作比较了。

实现checkbox框的数据回显,使用controller中传递的数据<c:foreach>获取了这些快递公司

------解决思路----------------------
用jquery把选项属性设置为checked
 $().attr("checked",true);

------解决思路----------------------

$(function() {//页面加载的时候触发
    var boxObj = $("input:checkbox[name='id']");  //获取所有的复选框
    var expresslist = '${supplierExpressids}'; //用el表达式获取在控制层存放的复选框的值为字符串类型
    var express = expresslist.split(','); //去掉它们之间的分割符“,” 
    for(i=0;i<boxObj.length;i++){
       for(j=0;j<express.length;j++){            
           if(boxObj[i].value == express[j])  //如果值与修改前的值相等
           {
               boxObj[i].checked= true;
               break;
           }
       }
    }          
})

使用jquery实现

[javascript]  view plain  copy
  1. var boxObj = $("input:checkbox[name='id']"); //获取所有的复选框值  
  2.     var expresslist = '${supplierExpressids}'//用el表达式获取在控制层存放的复选框的值为字符串类型  
  3.     var express = expresslist.split(',');  
  4.     $.each(express, function(index, expressId){  
  5.        boxObj.each(function () {  
  6.             if($(this).val() == expressId) {  
  7.                $(this).attr("checked",true);  
  8.             }  
  9.         });  
  10.     });  


[javascript]  view plain  copy
  1. <c:forEach var="item" items="${allCompInfoList }">  
  2.                                 <tr>  
  3.                                     <td class="d" align="center"><input type="checkbox"  name="id" value="${item.id}" /></td>  
  4.                                     <td class="d" align="center">${item.name}</td>  
  5.                                 </tr>  
  6.                             </c:forEach>  

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值