About jishuang

该作者尚未填入任何详情
So far jishuang has created 559 blog entries.

grid中多选设置选择行的样式

grid默认提供了设置当前选中行的css,没有提供多选行的样式,如果多选的时候要设置选中行的样式,多选取消时把样式取消,可以通过多选和取消触发的事件实现 grid选中数据行上的checkbox时,表示选中本行,会先触发onRowCheck事件,再触发onRowChecked事件 grid取消选中数据行上的checkbox时,表示取消选中本行,会先触发onRowCheck事件,再触发onRowChecked事件 那么就可以利用onRowCheck或者onRowChecked去设置,本案例用的是onRowChecked 1.在css文件中定义一个样式: .checkedClass{ background:green !important; } 2.在onRowChecked中判断是选中还是取消(在事件中event.checked为true是选中,为false是取消),选中是添加class,取消是删除class Model.prototype.grid1RowChecked = function(event) { var rowid = event.rowID; var tr = event.source.getRowByID(rowid); if (event.checked) { $(tr).addClass("checkedClass"); } else { $(tr).removeClass("checkedClass"); } }; [...]

grid的input中回车选中已有内容

1.grid的input中回车切换到下一行的同一列并选中已有内容 grid的input中回车切换到下一行的同一列的实现可以参考http://docs.wex5.com/bex5-grid-10013/ 切换到input中并选中已有内容可以在上面实现grid.editcell做如何调整 Model.prototype.input1Keydown = function(event) { var data = this.comp("bizData1"); var grid = this.comp("grid1"); var count = data.getCount(); var rowindex = data.getRowIndex() + 1; if (event.keyCode == 13) { grid.editStop(); if (rowindex < [...]

动态修改dataTables的列名

js中可以通过jquery的方式查找节点,然后修改相关的节点属性值或文本值 dataTablebs列名的修改就可以用jquery的方式实现,如下: var id = this.getIDByXID("dataTables1"); // dataTables1就是dataTables组件的xid $("#" + id).find(".sorting:eq(0)").html("要设置的列名");//eq(0)中的0是指除了行号和多选列dataTables中的第一个列,可以自己修改为其他列

树形数据控制末级节点不显示展开子的按钮

data的treeOption树参数中属性nodeKindRelation 节点类型关系,data操作时使用指定relation自动记录是否叶子节点信息 在树参数设置是nodeKindRelation设置一个关系如fKind,那么在平台提供的新建树形数据的参数时平台默认就会维护这个关系的值 末级节点上这个关系的值应该是nkLeaf,非末级节点这个关系是控制 tree在加载数据的时候平台会自动根据这个关系的值控制是否显示展现子节点的按钮

bizFilter相关的用法

bizFilter组件通过简单的属性设置就可以给数据增加综合过滤的能力 关键属性有: filterData: 过滤数据 filterCols: 过滤关系 BizFilter可以为数据设置任意复杂的查询条件,还可以存储为可重用的查询模板 BizFilter的查询模板存储在SA_FilterPattern中,每个组件以sProcess、sActivity、sInstance(xid)做数据过滤,获取自身的模板列表 1.动态控制bizFilter过滤的列 组件提供了filterCols属性可以直接设置要过滤的列,js也可以通过设置这个属性的值设置要过滤的列 如:this.comp("filter").set({'filterCols':'fName,fCode'}); filter是bizFilter的xid fName,fCode就是要设置的列 2.获取bizFilter生成的过滤条件 过滤条件是给data设置了,data上提供了getFilter可以传filter的名字获取对应的过滤条件 bizFilter生成的filter的名字规则如下: _BIZ_FILTER_bizFilter的xid 前面的_BIZ_FILTER_是固定的 如果bizFilter的xid是filter1,那么获取过滤条件就用this.comp("filterData").getFilter("_BIZ_FILTER_filter1")

gridSelect下拉控制哪些行才可以选择

gridSelect组件提供了selectFilter属性设置选中过滤表达式,此属性需要在创建时给出,组件创建后修改无效 表达式执行的this是行,即$row 当前表达式中可使用变量: "$model" : 当前的model, "$row" : {$UI/system/components/justep/data/data#Row} 当前过滤执行的行 如gridSelect下拉组织机构中的数据控制只有人员可以选择 可以在selectFilter上设置 val('sOrgKindID') == 'psm'

.w和.m.w的区别

UI2下的.w功能页面可以在PC和移动端访问 如果同一个功能需要PC和移动端访问不同的页面,可以把移动端的.w设置为.m.w,这样在pc端运行的时候平台默认就找.w,在移动端运行的时候平台默认就找.m.w 需要注意的是.w和.m.w前面的文件名一定要相同 另为如果要控制PC和移动端显示不同功能可以在功能树的菜单文件XXX.function.xml中设置设备类型进行控制: 设备类型为pc功能可以在pc上展现 设备类型为m功能可以在移动设备上展现

attachmentSimple控制上传的文件类型和大小

attachmentSimple组件默认没有提供设置上传类型和大小的属性和事件的控制,如果需要控制,可以获取到组件上的uploader,在uploader上绑定事件onFileSelected进行控制 获取uploader参考: var uploader = this.comp("attachmentSimple1").uploader; 给uploader绑定onFileSelected参考: uploader.on('onFileSelected',function(event){ }); 一、控制上传类型 在onFileSelected事件中可以通过event.file.type获取到上传的文件类型,这个类型是用ContentType 类型控制如: event.event.file.type = 'application/msword' 就是控制的.doc,其他相关类型的对应可以参考:http://www.3464.com/Data/HTTPContentType/ 如果要直接判断doc、txt这样的文件后缀类型可以通过获取的上传的文件名,截取后缀去判断,获取文件名用event.file.name 判断类型不符合条件的可以用event.cancel = true终止上传 如下: Model.prototype.modelLoad = function(event) { var uploader = this.comp("attachmentSimple1").uploader;//获取uploader var rootNode [...]

data中的数据如何整行复制

data组件的Row上提供了API: assign (Row row, List<string> cols) 整行赋值 Parameters Row row 行对象 List<string> cols 需要赋值的列名数组,缺省全部列方法 案例参考: var row = this.comp('data1').getCurrentRow(); var row2 = this.comp('data2').getCurrentRow(); row2.assign(row); 如果是在grid中展现数据需要设置复制的列,不能全复制,rowid需要重新生成 如下: var data = this.comp("mainData"); [...]