批量更新,只更新被修改的条目,批量更新时判断哪个需要更新

原理说明:

  * 前提,被禁用的条目是不提交的。

  然后,我们可以先禁用所有条目,当我们点选checkbox时,将选中行的禁用解除

  * 这样被选中的行就可以进行编辑,并且可以被提交了,后台接收数据后就可以修改了。

  * 这样就避免了,提交所有数据进行修改的情况了(包含了那些没有被修改的数据,增加了不必要的修改)。

下面是前端的实现代码:

[java] view plain copy

 
  1. <input type="checkbox" id="updateRateDesc" name="updateRateDesc" onclick="clickCheckbox(this,'rDesc')" value="update"/>  
 
 
[java] view plain copy
 
  1. function clickCheckbox(obj,id){  
  2.                 if(obj.checked){  
  3.                     jQuery("#"+id+" input[type=text]").attr("disabled","");  
  4.                     jQuery("#"+id+" textarea").attr("disabled","");  
  5.                     jQuery("#"+id+" input[type=button]").attr("disabled","");  
  6.                     jQuery("#"+id+" input[type=checkbox]").attr("disabled","");  
  7.                 }else{  
  8.                     jQuery("#"+id+" input[type=text]").attr("disabled","true");  
  9.                     jQuery("#"+id+" textarea").attr("disabled","true");  
  10.                     jQuery("#"+id+" input[type=button]").attr("disabled","true");                     
  11.                     jQuery("#"+id+" input[type=checkbox]").attr("disabled","true");  
  12.                 }  
  13.             }  

Springmvc后台接受数据:

----

删除多个条目分析:

  我们可以共用checkbox按钮,然后增加两个按钮(一个是删除多个按钮,一个是更新按钮),这样相互之间就没有影响了。

  1.当我们选中多个checkbox时候,点击删除多个按钮,则会把多个id传入后台进行删除。并不会进行更新操作。

  2.当我们选中多个checkbox时候,点击更新按钮时,会把待修改的数据传入后台,按照id(包含在传入的数据中)进行修改。

原文地址:https://www.cnblogs.com/hfultrastrong/p/7783511.html