jquery实现保存已选用户

前端技术 2023/09/02 JavaScript

1介绍

功能要求:

1 选择用户界面以弹出框方式显示

2 页面选项动态加载(部门及用户)

3 保存勾选的用户

实现分析:

保存已选用户逻辑:

删除原来已选择的用户记录列表(相当于清空操作)
添加新选择用户记录列表
页面

 1 保存共享文件

// 保存共享文件
  function shareFile(){
    // 参数
    var signid = chooseObj.id;
    var objtype = chooseObj.type;
    var userlist = \"\";
    $(\"input[name=shareUserId]\").each(function(){
       // 此时的this 就是那个 html中的 那个checkbox对象。所以通过
       // this.checked 直接访问属性都是可以的 
       if($(this).attr(\'checked\')){
         userlist = userlist+$(this).val()+\",\"
       }
    });
    if(userlist.length>0){
      userlist = userlist.substring(0, userlist.length-1)
    }
    $.ajax({
      url : \'../share/shareFile.do\',
      //url:\'${ctx}/index.jsp\',
      cache : false,
      type : \'post\',
      dataType : \'html\',
      async : false,
      contentType : \"application/x-www-form-urlencoded;charset=utf-8\",
      data : {
        \'signid\' : signid,
        \'objtype\' : objtype,
        \'userlist\':userlist
      },
      success : function(ret) {
        // 异常处理
        if(ret==3){
          handleWarm(\"目标文件夹是自己\"); 
          return;
        }else if(ret==2){
          handleWarm(\"不能移动至子目录\"); 
          return;
        } 
        // closeflowcontent(\'fxcontentflow\');
        refreshThisContent();
      }
    })
  }

页面选项内容html参考(仅供参考,无需实现)

<div class=\"fxtitle\">院领导</div>
  <ul class=\"fxxz\">
    <li><input type=\"checkbox\" name=\"shareUserId\" value=\"xiaolin\">肖林 </li>
    <li><input type=\"checkbox\" name=\"shareUserId\"
      value=\"wangshuotong\">王硕佟 </li>
    <li><input type=\"checkbox\" name=\"shareUserId\"
      value=\"wangshengyang\">汪胜洋 </li>
    <li><input type=\"checkbox\" name=\"shareUserId\" value=\"qifeng\">齐峰 </li>
    <li><input type=\"checkbox\" name=\"shareUserId\" value=\"tangyiwen\">唐忆文 </li>
    <li><input type=\"checkbox\" name=\"shareUserId\"
      value=\"zhanglisheng\">张利生 </li>
    <li><input type=\"checkbox\" name=\"shareUserId\" value=\"zhengshao\">郑韶 </li>
  </ul>
  <div class=\"fxtitle\">办公室</div>
  <ul class=\"fxxz\">
    <li><input type=\"checkbox\" name=\"shareUserId\" value=\"lujianping\">陆建平 </li>
    <li><input type=\"checkbox\" checked=\"true\" name=\"shareUserId\"
      value=\"guoshunlan\">郭顺兰 </li>
    <li><input type=\"checkbox\" name=\"shareUserId\" value=\"fangying\">方颖 </li>
    <li><input type=\"checkbox\" name=\"shareUserId\" value=\"jiaoxiaojun\">焦晓君 </li>
    <li><input type=\"checkbox\" checked=\"true\" name=\"shareUserId\"
      value=\"songweilei\">宋维蕾 </li>
    <li><input type=\"checkbox\" name=\"shareUserId\" value=\"zhangxinmin\">张新民 </li>
    <li><input type=\"checkbox\" checked=\"true\" name=\"shareUserId\"
      value=\"lijing\">李靖 </li>
    <li><input type=\"checkbox\" name=\"shareUserId\" value=\"wangkaiyu\">王开宇 </li>
  </ul>

后台代码
controller层

public void shareFile(HttpServletRequest request,HttpServletResponse response) { 
    
    String signid = request.getParameter(\"signid\") == null? \"\": request.getParameter(\"signid\"); 
    String objtype = request.getParameter(\"objtype\") == null? \"\": request.getParameter(\"objtype\"); 
    String userlist = request.getParameter(\"userlist\") == null?\"\": request.getParameter(\"userlist\"); 
    User user = (User)request.getSession().getAttribute(\"user\"); 
      
    int result = fileShareManager.shareFile(signid, objtype, userlist, user.getUserid().getValue()); 
    try{ 
      request.setCharacterEncoding(\"UTF-8\"); 
      PrintWriter pw = response.getWriter();  
      pw.write(\"\" + result); 
      pw.flush(); 
      pw.close(); 
    }catch (Exception e) { 
      // TODO: handle exception 
      e.printStackTrace(); 
    } 
      
  } 

service层

/** 
   * 指定共享文件、文件夹 
   * 
   * @param signid 文件夹id/文件id      
   * @param objtype 操作对象类型(1:file、2:folder) 
   * @param userlist 分享用户范围 
   * @return 0表示操作失败/1表示操作成功 
   * 
   */ 
  public int shareFile(String signid, String objtype, String userlist, String sharer) { 
    // 删除共享记录 
    fileShareDao.deleteFileshare(signid, objtype);    
    // 新建共享记录 
    String users[] = userlist.split(\",\"); 
    
    // 保存每一个共享用户 
    for (int i = 0; i < users.length && !users[0].equals(\"\"); i++) { 
        WpFileshare wpFileshare = new WpFileshare();       
        wpFileshare.setSharer(sharer); 
        wpFileshare.setShareuser(users[i]);  
        wpFileshare.setSharetime(new Date()); 
        fileShareDao.saveFileshare(wpFileshare); 
    } 
  } 

本文地址:https://www.stayed.cn/item/4319

转载请注明出处。

本站部分内容来源于网络,如侵犯到您的权益,请 联系我

我的博客

人生若只如初见,何事秋风悲画扇。