dataTables组件多选时如何控制只有一行是选中状态

dataTables组件的multiSelect设置为true,显示多选框进行多选 如果要控制只允许一行是选中状态,可以在dataTables的onRowCheck事件中如下控制: Model.prototype.listDataRowCheck = function(event) { var checkRows = event.source.getCheckeds(); //获取多选选中状态的行 //判断当前操作的是行的选中状态,遍历选中状态的行,设置rowID跟当前操作行的rowID不一致的行为不选的状态 if (event.checked === true) { for(var i= 0;i<checkRows.length;i++){ if(checkRows[i].getID() != event.rowID){ event.source.setRowChecked(checkRows[i],false); } } } };

grid如何判断某一列是否隐藏了

grid中的列隐藏后,最终生成的这列的dom节点td上的style为display:none; 因此可以通过获取style的值判断,如下: var grid = this.comp("grid2"); var rowid = this.comp("mainData").getCurrentRowID();//获取data的当前行rowid $td = $(grid.getCell(rowid, "fDate"));//获取rowid和列获取cell的jquery对象(td) var style = $td.attr("style");//获取td的style属性 if(style == "display:none;"){ alert("列被隐藏"); }

如何实现注册用户

平台默认没有提供注册用户,是需要登录后到组织管理功能中添加的,如果要提供注册用户的功能参考如下: 本例是通过扩展空间修改的portal实现的,可以下载资源直接复制到model下使用 model 1.在登录页添加注册按钮和页面 /UI2/portal_X/base/login/login.w放了contents组件,添加两个content,并把contents组件上的下面属性都设置为false wrap="false" swipe="false" slidable="false" routable="false" 把平台默认的登录块放到第一个content中,把在登录按钮旁边添加注册按钮 <div class="form-group"> <div component="$UI/system/components/justep/row/row" class="x-row" xid="row2"> <div class="x-col" xid="col3"> <a component="$UI/system/components/justep/button/button" class="btn btn-default btn-block" label="登录" xid="login" onClick="loginClick"> <i xid="i1"/> <span xid="span1">登录</span> </a> [...]

importExcel组件如何修改“导入参数设置”弹出对话框的大小

importExcel组件导入的时候会弹出"导入参数设置"弹出框,其实就是windowDialog,是importExcel组件实现是内部创建了windowDialog 如果是单个功能中要修改这个弹出框的大小,可以如下操作: 在importExcel的onBeforeImport事件中通过importExcel组件提供的方法获取到windowDialog,调用set方法设置即可 Model.prototype.importExcel1BeforeImport = function(event){ var cfgDialog = event.source.getConfigDlg();//获取windowDialog // cfgDialog.set({"status":"maximize"});//设置windowDialog的status对话框显示状态 cfgDialog.set({"width":"50%","height":"50%"});//设置windowDialog的宽和高 }; 如果是所有功能中的都要修改,可以直接修改组件的js实现: /UI2/system/components/justep/excel/importExcel.js中如下的方法中new WindowDialog时修改status的值,或者增加width和height的设置 getConfigDlg : function() { // 不存在就创建一个 if (!this.configDlg) { this.configDlg = new WindowDialog({ showTitle : [...]

attachmentPC组件如何设置subPath

attachmentPC组件提供了subPath属性可以设置上传文件到指定的知识中心目录下的子目录 subPath属性支持后端表达式的设置 如下: 获取当人员成员的Name和当前日期拼接生成 当然也可是设置固定的路径,如下创建a、b、c这3层目录 如果要js动态设置subPath的值可以在model的onLoad事件中设置,如下: Model.prototype.modelLoad = function(event) { var attachmentPC = this.comp("attachmentPC1"); attachmentPC.subPath = "concat(toString(currentDate()),'/',currentPersonMemberName())"; //attachmentPC.subPath = "a/b/c"; }; 设置了subPath,如果文档管理——文档中心功能左侧树中没有这样的目录上传文件后要立即保存业务数据,否则再次上传会生成同样的目录 上面的方式如果需要在同一个页面动态设置多次,只有第一次起作用,使用5.3.8.6274以及之后的版本可以通过下面的方式可以设置多次 Model.prototype.mainDataIndexChanged = function(event){ var attachmentPC1 = this.comp("attachmentPC1"); var row [...]

script中的function函数与平台组件或者方法的交互

.w文件中可以直接通过script定义html中的函数格式 如下: <script> function test(event){ alert('test'); } </script> .w中的按钮要调用script中的函数可以直接在onClick事件中调用即可 如下: <a component="$UI/system/components/justep/button/button" class="btn btn-default" label="button" xid="button6" onClick="test"> <i xid="i6"/> <span xid="span6"/> </a> script中的函数如果要调用组件或者model的方法需要先获取到model 具体操作: 1.用jquery的方式获取到.w中某个节点元素(任何元素都可以)的dom 2.用获取的元素获取model var this = justep.Bind.contextFor(获取的元素).$model; 然后就可以用this.comp("组件的xid")或this.XXX()调用组件或者model的方法 [...]

PC3从功能树打开功能时如何实现标题显示目录层级

从功能树上打开功能,标题默认只是显示的功能名称,不会显示一级目录、二级目录等目录层级的名称 如果要显示完整的层级目录的名称可以如下实现 1./UI2/portal/pc3/index.js中修改doCreateFunctionTree函数中点击打开功能的实现 var me = this; $('li>a', $content).click(function() { var el = $(this), pageKey = el.attr('pageKey'); if (pageKey) { $(".func-open", $content).removeClass("func-open"); el.parent().addClass("func-open"); me.showPage(pageKey); } }); 修改为: var me = this; $('li>a', [...]

accordion怎么关闭折叠功能

accordion手风琴折叠组件默认点击heading区域会折叠或展开下方显示内容区域,如果要取消折叠功能一直处于展开状态参考下面的设置 控制.w中某一个accordion,可以在model的onLoad中如下控制: Model.prototype.modelLoad = function(event) { var accordionID = this.getIDByXID("accordion1");//通过accordion组件的xid获取id var $targets = $("#" + accordionID + " .panel>.panel-heading");//获取这个accordion下的heading元素 //重写heading元素的click $targets.click(function() { $(this).nextAll().eq(0).collapse("show"); }); }; 控制.w中所有的accordion,可以在model的onLoad中如下控制: Model.prototype.modelLoad = function(event) { var windowID [...]

如何控制PC端一个用户只允许登录一次

平台默认的一个用户可以在多个地方登陆多次,并且提供了“在线用户”功能可以查看在线用户 如果要控制一个用户只运行登录一次,可以在登录前获取到输入的用户名与“在线用户”中的数据做对比 本例是判断如果已登录了可以注销之前的用户再登录,或者切换其他的用户登录 /UI2/portal/base/login/login.js的Model.prototype.login = function() {方法修改如下: Model.prototype.login = function() { var remember = this.comp('remember'), name = this.comp('name'), password = this.comp('password'), autoLogin = this.comp('autoLogin'); var urlParams = {}; urlParams.username = name.val() || $("[xid=name]").val();// 为了支持360急速浏览器, [...]