jquery实现保存已选用户


Posted in Javascript onJuly 21, 2014

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); 
    } 
  }
Javascript 相关文章推荐
javascript 浏览器判断 绑定事件 arguments 转换数组 数组遍历
Jul 06 Javascript
基于JQuery实现异步刷新的代码(转载)
Mar 29 Javascript
js调用图片隐藏&amp;显示实现代码
Sep 13 Javascript
JS比较两个时间大小的简单示例代码
Dec 20 Javascript
直接在JS里创建JSON数据然后遍历使用
Jul 25 Javascript
浅谈JavaScript数据类型
Mar 03 Javascript
vue拦截器Vue.http.interceptors.push使用详解
Apr 22 Javascript
javascript 取小数点后几位几种方法总结
Aug 02 Javascript
vue绑定设置属性的多种方式(5)
Aug 16 Javascript
深入浅析ES6 Class 中的 super 关键字
Oct 20 Javascript
微信小程序第三方框架对比 之 wepy / mpvue / taro
Apr 10 Javascript
vue获取验证码倒计时组件
Aug 26 Javascript
jquery实现显示已选用户
Jul 21 #Javascript
jquery操作checkbox示例分享
Jul 21 #Javascript
jquery常用操作小结
Jul 21 #Javascript
JavaScript中的apply和call函数详解
Jul 20 #Javascript
一行命令搞定node.js 版本升级
Jul 20 #Javascript
JavaScript中的原型和继承详解(图文)
Jul 18 #Javascript
JavaScript中伪协议 javascript:使用探讨
Jul 18 #Javascript
You might like
phpmyadmin安装时提示:Warning: require_once(./libraries/common.inc.php)错误解决办法
2011/08/18 PHP
PHP实现模仿socket请求返回页面的方法
2014/11/04 PHP
php连接与操作PostgreSQL数据库的方法
2014/12/25 PHP
启用Csrf后POST数据时出现的400错误
2015/07/05 PHP
php关闭warning问题的解决方法
2016/05/17 PHP
laravel5.2表单验证,并显示错误信息的实例
2019/09/29 PHP
PHP 对象接口简单实现方法示例
2020/04/13 PHP
不错的JS中变量相关的细节分析
2007/08/13 Javascript
jQuery 表单验证扩展(三)
2010/10/20 Javascript
jquery全选/全不选/反选另一种实现方法(配合原生js)
2013/04/07 Javascript
SpringMVC返回json数据的三种方式
2015/12/10 Javascript
详解nodeJS之二进制buffer对象
2017/06/03 NodeJs
基于vue2实现左滑删除功能
2017/11/28 Javascript
使用socket.io实现简单聊天室案例
2018/01/02 Javascript
p5.js入门教程之平滑过渡(Easing)
2018/03/16 Javascript
vue异步加载高德地图的实现
2018/06/19 Javascript
BootStrap模态框闪退问题实例代码详解
2018/12/10 Javascript
vscode 配置vue+vetur+eslint+prettier自动格式化功能
2020/03/23 Javascript
在vue中获取wangeditor的html和text的操作
2020/10/23 Javascript
基于python中的TCP及UDP(详解)
2017/11/06 Python
python3第三方爬虫库BeautifulSoup4安装教程
2018/06/19 Python
使用numpy和PIL进行简单的图像处理方法
2018/07/02 Python
详解Python安装tesserocr遇到的各种问题及解决办法
2019/03/07 Python
keras处理欠拟合和过拟合的实例讲解
2020/05/25 Python
PyCharm设置注释字体颜色以及是否倾斜的操作
2020/09/16 Python
numpy实现RNN原理实现
2021/03/02 Python
家长会学生家长演讲稿
2013/12/29 职场文书
致裁判员加油稿
2014/02/08 职场文书
优秀老员工获奖感言
2014/02/15 职场文书
老师的检讨书
2014/02/23 职场文书
优乐美广告词
2014/03/14 职场文书
《水上飞机》教学反思
2014/04/10 职场文书
借款担保书范文
2014/05/13 职场文书
七年级之开学家长寄语35句
2019/09/05 职场文书
红灯733-1型14管5波段半导体收音机
2021/04/22 无线电
MongoDB balancer的使用详解
2021/04/30 MongoDB