欢迎使用普元产品知识库,本知识库包含普元应用开发平台EOSPlatform,流程平台BPS,企业服务总线ESB,微服务平台Microservice,运维管理平台Devops,数据集成平台DI

页面树结构

欢迎使用普元文档库

Skip to end of metadata
Go to start of metadata

项目实现部门用户单选及复选页面,并且页面中校验用户是否重复的js案例:

<%@ page language="java" contentType="text/html; charset=UTF-8"
 pageEncoding="UTF-8" session="false" %>
< %@page import="com.eos.data.datacontext.UserObject"%>
< !DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
< html>
< !--
 - Author(s): niubq
 - Date: 2016-05-17 10:16:52
 - Description:
 -->
< %
 String doctype=request.getParameter("doctype");
 String documentid=request.getParameter("documentid");
 String processInsId=request.getParameter("processInsId");
 String activityName = request.getParameter("activityName");
 String orgid = request.getParameter("orgid");
 if(orgid==null){
 orgid="";
 }
 UserObject leftUserObject=(UserObject)request.getSession().getAttribute("userObject");
 String createrName = leftUserObject.getUserRealName();
 String createUserId = leftUserObject.getUserId();
 %>
< head>
< title>公文分发</title>
< meta http-equiv="content-type" content="text/html; charset=UTF-8" />
< script src="<%=request.getContextPath() %>/common/nui/nui.js" type="text/javascript"></script>
< /head>
< body>
< table>
< tr>
< td>备注说明:</td>
< td>
       <input width="400px" name="remark" cols="60" rows="5" promptName="备注说明"></textarea>   
< /td>
< /tr>
< /table>
< TABLE width="100%" align="center">
< tr bgColor=#eef4ff>
< td width="100%">
< /td>
< /tr>
< tr>
< td width="50%">选择接收人员    <input name="alluser" onclick="_chooseAlluser(this.checked,1)">全选
< % if(!(activityName.equals("会签")||activityName.equals("传阅领导"))){%>< input id="comboDept" textField="ORGNAME" valueField="ORGID" dataField="org" url="com.hkr.hydro.hrm.organization.organization.impl.selectOrganiztion.queryOrganization.biz.ext?orgid=<%=orgid %>" onvaluechanged="onSelectionChanged" emptyText="请选择部门" value="<%=orgid %>" showNullItem="true" />< %}

 %>
< /td>
< /tr>
< tr bgColor=#FFFFFF>
< % if(activityName.equals("会签"))
{%>< %}

else if(activityName.equals("传阅领导"))
{%>< td width="100%" align="left">< div id="leader_grid" style="width:100%;height:230px;" dataField="ld" multiSelect="true" showPager="false" url="com.hkr.hydro.hrm.organization.organization.impl.selectOrganiztion.queryOrgLd.biz.ext">< div property="columns">< div type="indexcolumn"></div>< div type="checkcolumn"></div>< div field="receiveuserid" headerAlign="left" visible="false">empid</div>< div field="EMPNAME" headerAlign="left" >部门人员姓名</div>< div field="ORGNAME" headerAlign="left" >单位名称</div>< /div>< /div>< /td>< %}

else
{%>< td width="100%" align="left">< div id="user_grid" style="width:100%;height:190px;" dataField="userinfo" multiSelect="true" showPager="false" url="com.hkr.hydro.hrm.organization.organization.impl.selectOrganiztion.queryOrgUser.biz.ext" onrowclick="onrowclick">< div property="columns">< div type="indexcolumn"></div>< div field="receiveuserid" headerAlign="left" visible="false">empid</div>< div field="EMPNAME" headerAlign="left" >部门人员姓名</div>< div field="ORGNAME" headerAlign="left" >单位名称</div>< div field="checkcolumn" width="30" headerAlign="center" align="center" renderer="showcheckbox" >< input id="ck" type="checkbox" onClick="selectall(this)">< /div>< /div>< /div>< div style="width:100%;" id="showuser">< label>已选择:</label>< input id="selectUsers" style="width:100%;height:60px" value="" text="" valueField="id" textField="text" allowInput="false"/>< /div>< /td>< %}

%>
< /tr>
< /table>
< TABLE width="100%" align="center" >
< TR>
< td align=center style="text-align:center;">
< input type="button" name="button" text="发送" onClick="_docSend()">
< input type="reset" name="Submit2" text="关闭" onClick="CloseWindow('')">
< /td>
< /TR>
< /TABLE>
< script type="text/javascript">
 nui.parse();
 var user_grid = nui.get("user_grid");
 var leader_grid = nui.get("leader_grid");
 var selectUserObj=new nui.get("selectUsers");
 var _selectVal = new Array();
 if(user_grid){
 user_grid.load();
 }
 (function (){
 if(leader_grid)
 leader_grid.load();
 //user_grid.load();
 user_grid.load(
{ orgid:'<%=orgid %>' }

,
 function(){
 _chooseAlluser(nui.getbyName("alluser").checked,0);
 },function(){
 nui.alert("数据加载失败");
 });
 })();
 function onSelectionChanged(e) {
 var combo = e.sender;
 var orgid = combo.getValue();
 if (orgid) {
 user_grid.load(
{ orgid: orgid }

,
 function(){
 //_chooseAlluser(nui.getbyName("alluser").checked,0);
 },function(){
 nui.alert("数据加载失败");
 });
 }else{
 user_grid.clearRows();
 }
 }
 selectUserObj.on("valuechanged", onValueChanged);
 function onValueChanged(e){
 var _data = user_grid.getData() ;
 var _isExist ;
 $.each(_data ,function(_index,record) {
 _isExist = isUserSelectExist(record.empid) ;
 if(_isExist){
 $("#chk_" + record.empid).attr("checked" ,'true') ;
 }else{
 $("#chk_" + record.empid).removeAttr("checked");
 }
 });
 //结果集合内删除被用户点击的取消的记录
 var valArray = selectUserObj.getValue().split(",") ;
 $.each(_selectVal ,function(_index,record) {
 var empid = record.data.empid ;
 if (empid!= valArray[_index]) {
 _selectVal.splice(_index ,1) ;
 return false ;
 }
 });
 }
 function onrowclick(e){
 //debugger;
 var record = e.record;
 var checked = $("#chk_" + record.receiveuserid).attr("checked");
 if(checked){
 $("#chk_" + record.receiveuserid).removeAttr("checked");
 }else{
 $("#chk_" + record.receiveuserid).attr("checked" ,'true') ;
 }
 checkboxChange("#chk_" + record.receiveuserid) ;
 }
 function showcheckbox(e){
 var record=e.record;
 //判断是否在结果集中
 // debugger;
 var checkstr = isUserSelectExist(record.receiveuserid) ? " checked" : "" ;
 return '<input id="chk_'record.receiveuserid'" type="checkbox" targetName="'+record.EMPNAME
 +'" empid="' + record.receiveuserid + '" name="useselect" ' + checkstr + ' onClick="chkClick(this)">';
 }
 function chkClick(obj){
 obj.checked=!obj.checked;
 }
 function selectall(obj){
 var chks=$('input[id^="chk_"]');
 if(obj.checked){
 for(var i=0;i<chks.length;i++){
 chks[i].checked=true;
 checkboxChange(chks[i]) ;
 }
 }
 else {
 for(var i=0;i<chks.length;i++){
 chks[i].checked=false;
 checkboxChange(chks[i]) ;
 }
 }
 //obj.checked=!obj.checked;
 }
 /**
 * 判断该用户是否已经被选中
 */
 function isUserSelectExist( val ){
 //debugger;
 var _selectuser_val = selectUserObj.getValue() ;
 var _selectArray = _selectuser_val.split(",") ;
 var _index = $.inArray(val+"",_selectArray) ;
 return _index < 0 ? false : true ;
 }
 function checkboxChange(obj) {
 var targetName = $(obj).attr("targetName");
 var checked = $(obj).attr("checked");
 var empid = $(obj).attr("empid");
 if(checked){
 addSelectUser(targetName ,empid) ;
 }else{
 removeSelectUser(empid);
 }
 }
 function addSelectUser(name,val) {
 var _selectuser_val = selectUserObj.getValue() ;
 var _selectuser_name = selectUserObj.getText() ;
 var _selectArray = _selectuser_val.split(",") ;
 var _index=$.inArray(val,_selectArray) ;
 var seprator = _selectuser_val=="" ?"" : ",";
 if(_index < 0){
 _selectuser_val = _selectuser_val + seprator + val ;
 _selectuser_name = _selectuser_name + seprator+name ;
 selectUserObj.setValue(_selectuser_val) ;
 selectUserObj.setText(_selectuser_name) ;
 _selectVal.push(getEmpVal(val,name)) ;
 }
 }
 function getEmpVal(v_empid,v_username) {
 return 
{EMPNAME:v_username,receiveuserid:v_empid}

 ;
 }
 function removeSelectUser(val) {
 var _selectuser_val = selectUserObj.getValue();
 var _selectuser_name = selectUserObj.getText();
 var _selectArray = _selectuser_val.split(",") ;
 var _nameArray = _selectuser_name.split(",") ;
 var _index = $.inArray(val,_selectArray) ;
 if(_index >= 0){
 _selectArray.splice(_index , 1) ;
 _nameArray.splice(_index , 1) ;
 _selectVal.splice(_index ,1) ;
 }
 selectUserObj.setValue(_selectArray.join(",")) ;
 selectUserObj.setText(_nameArray.join(",")) ;
 }
 var allMemebers=[];
 function _chooseAlluser(obj){
 if(obj){
 $.ajax({
 url:"com.hkr.hydro.hrm.organization.organization.impl.selectOrganiztion.queryAllUsers.biz.ext",
 type:"post",
 data:[],
 cache:false,
 async:false,
 contentType:'text/json',
 success:function(text){
 var returnJson = nui.decode(text);
 allMemebers=returnJson.data;
 },
 error:function(){
 }
 });
 }
 }
 function _docSend(){
 var remark=nui.getbyName("remark").getValue();
 var row;
 var orgid ="";
 if('<%=activityName %>'=='传阅领导'){
 row=leader_grid.getSelecteds();
 }else if('<%=activityName %>'=='传阅处室'){
 //row=user_grid.getSelecteds();
 row=_selectVal;
 if(nui.getbyName("alluser").checked){
 row=allMemebers;
 orgid="";
 }else{
 //orgid= combo.getValue();
 }
 }
 // var data=
{docDelivers:row,remark:remark,doctype:'<%=doctype %>',senduserid:'<%=createUserId %>',documentid:'<%=documentid %>',orgid:orgid}

;
 var data=
{docDelivers:row,remark:remark,doctype:'<%=doctype %>',senduserid:'<%=createUserId %>',documentid:'<%=documentid %>'}

;
 var json=nui.encode(data);
 $.ajax({
 url:"com.hkr.hydro.oa.docdeliverbiz.batchAddDocDeliver.biz.ext",
 type:"post",
 data:json,
 cache:false,
 async:false,
 contentType:'text/json',
 success:function(data){
 nui.alert("分发成功","提示",function(){
 CloseWindow("");
 })
 },
 error:function(){
 }
 });
 }
 //关闭窗口
 function CloseWindow(action) {
 if (window.CloseOwnerWindow) {
 return window.CloseOwnerWindow(action);
 } else {
 window.close();
 }
 }
< /script>
< /body>
< /html>