• 隐藏明细表的加号按钮,如果不想让用户手工添行,必须通过自动联动添明细行,可以将明细表的加号按钮隐藏.

document.getElementById('$addbutton0$').style.display="none";

  • 浏览按钮的禁用与启用:如果想禁用浏览按钮,比如限制用户必须先填某些内容才能选择浏览框,可以用如下代码
//禁用
$("#field13769__").attr("disabled",true);
$("#field13769_browserbtn").attr("disabled",true);
$("#innerContentfield13769div").css("cursor",'not-allowed');

$("#field13769_browserbtn").css("cursor",'not-allowed');

$("#field13769span .e8_showNameClass .e8_delClass").html("");

//启用

$("#field13769__").attr("disabled",false);

$("#field13769_browserbtn").attr("disabled",false);

$("#innerContentfield13769div").css("cursor",'');

$("#field13769_browserbtn").css("cursor",'');

$("#field13769span .e8_showNameClass .e8_delClass").html(" x ");

  • 明细表遍历:如果想遍历明细表可以用如下代码
//第一个明细表即oTable0,第二个即oTable1,以此类推...
jQuery("#oTable0").find("tr[_target=datarow]").each(function(index,obj){
var i = $(obj).attr("_rowindex");//明细字段的序号

});

  • 添加或删除明细:如果想实现程序自动新增明细行或删除明细行,可以用如下代码
//删除明细行,下面这个是删除所有明细行,如果想删除特定明细行只需选中特定明细行的check框即可
jQuery("input[type='checkbox'][name='check_node_0']").each(function(){
jQuery(this).attr({'checked':'checked'});
});
//deleteRow0即为删除第一个明细表被勾选的明细行,deleteRow1即为删除第二个明细表被勾选的明细行,以此类推...
deleteRow0(0,true);
//添加明细行,addRow0即为给第一个明细表新增一行,addRow1即为给第二个明细表新增一行,以此类推...
addRow0(0);
  • 隐藏明细表的加号按钮,如果不想让用户手工添行,必须通过自动联动添明细行,可以将明细表的加号按钮隐藏
    1. //addbutton0即为第一个明细表的加号按钮,addbutton1即为第二个明细表的加号按钮,以此类推...
    2.  document.getElementById('$addbutton0$').style.display="none";
  • 流程中引入JSP,可以做一些复杂的开发

--只需在表中修改对应的字段即可
workflow_base,该表中id即对应流程的workflowID,custompage中为引入的JSP文件

  • 在页面上获取requestid、workflowid等

<!--在引入的JSP中添加如下代码-->
<%@ page language="java" contentType="text/html; charset=UTF-8" %>
<%@ page import="java.util.*" %>
<%@ page import="weaver.general.*" %>
<%
int workflowid = Util.getIntValue(request.getParameter("workflowid"));
int requestid = Util.getIntValue(request.getParameter("requestid"));
%>
<script type="text/javascript">
//在js中即可使用
var workflowid = '<%=workflowid %>';
var requestid = '<%=requestid %>';
</script>

  • 增加或移除必填验证,应用场景,在明细表中想根据某个字段的值确认另一个字段是否必填,因为泛微自带的编辑属性只能配置主表的且还是下拉选的才能配置

//移除必填验证
function removeInputCheckField1(fieldId) {
$('#' + fieldId).attr('viewtype', '0');
var fieldStr = $('input[name=needcheck]').val();
$('input[name=needcheck]').val(fieldStr.replace(fieldId + ',', ''));
$("#"+fieldId).val('');
$("#"+fieldId).css("cursor",'not-allowed');
$("#"+fieldId).attr("disabled",true);
$("#"+fieldId+"_browserbtn").attr("disabled",false);
$('#' + fieldId + "span").html("");
}
//增加必填控制
function addInputCheckField1(fieldId) {
$('#' + fieldId).attr('viewtype', '1');
var fieldStr = $('input[name=needcheck]').val();
if(fieldStr.indexOf(fieldId) == -1){
if (fieldId.charAt(fieldStr.length - 1) != ',') {
fieldStr += ',';
}
$('input[name=needcheck]').val(fieldStr + fieldId + ',');
}
$("#"+fieldId).css("cursor",'');
$("#"+fieldId).attr("disabled",false);
if($("#"+fieldId).val() == '' || $("#"+fieldId).val() == null || $("#"+fieldId).val() == undefined){
$('#' + fieldId + "span").html('<img src="/images/BacoError_wev8.gif" align="absMiddle">');
}
}
————————————————
版权声明:本文为CSDN博主「cap_jack_sp」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/sinat_19671783/article/details/104967644

/** *

  • 控制明细列隐藏/显示

* @param {cusclassname} 列自定义class属性

* @param {status} 1为显示,2为隐藏

*/

function cus_ControlDetailColumnByClass(cusclassname, status){

if(status === 1)

jQuery("td."+cusclassname).show().removeClass("edesign_hide");

else if(status === 2)

jQuery("td."+cusclassname).hide().addClass("edesign_hide");

}

  • 附件必填

fieldViewAttr("23871", "1");

function fieldViewAttr(fieldid, viewtype) {
jQuery("#field" + fieldid).attr("viewtype", viewtype);
var checkstr2 = jQuery("input[name='needcheck']").eq(0).val();
if(viewtype == "1") {
if(checkstr2.indexOf("field" + fieldid + ",") < 0) {
jQuery("input[name='needcheck']").eq(0).val(checkstr2 + "," + "field" + fieldid + ",");
}
var abv = jQuery("#field" + fieldid).val();
if(abv == "") {
jQuery("#field_" + fieldid + "span").html("<img/>");
jQuery("#field_" + fieldid + "span").find("img").eq(0).attr("src", "/images/BacoError_wev8.gif");

jQuery("#field" + fieldid + "span").html("<img/>");
jQuery("#field" + fieldid + "span").find("img").eq(0).attr("src", "/images/BacoError_wev8.gif");
}
} else {
jQuery("#field_" + fieldid + "span").html("");

jQuery("input[name='needcheck']").eq(0).val(checkstr2.replace("field" + fieldid + ",", ""));
if(jQuery("#field" + fieldid + "span").find("img").length > 0) {
jQuery("#field" + fieldid + "span").find("img").eq(0).remove();
}
}
}

泛微OA技巧随记的更多相关文章

  1. 帆软的报表系统与泛微OA结合起来,这两个软件麦枫提供了经典的服务。

    一.集成配景泛微OA对企业的代价 泛微协同办公计划能向你供给一个协同的.集成的办公情况,使所有的办公职员都在统一且个性化的信息流派中一路事情, 解脱光阴和地区的限定,实现协同事情与知识治理. Eoco ...

  2. 泛微oa几个常用的js

    泛微OA,常用JS 为满足一些简单需求,我从网上借鉴了大量的代码,其中几个是非常好用的. (1).取值判断 通过jQuery('#field1234').val()取字段的值,field1234对应字 ...

  3. FineReport和泛微OA(Ecology)的单点登录集成方案

    最近出现了很多关于帆软报表和泛微OA的集成问题,均出现在“单点登录”上.直接也有相关的文章介绍一些FineReport和泛微集成的背景.价值等,以及FineReport和OA的深度集成的方案,但是并没 ...

  4. 泛微OA系统多版本存在命令执行漏洞

    0x01漏洞描述 泛微OA办公系统是一款协调办公软件. 泛微协同商务软件系统存在命令执行漏洞,攻击者可利用该漏洞获取服务器权限. 0x02漏洞危害 攻击者可以通过精心构造的请求包在受影响版本的泛微OA ...

  5. 应用安全 - 软件漏洞 - 泛微OA漏洞汇总

    SQL注入 前台SQL注入 用户名:admin' or password like 'c4ca4238a0b923820dcc509a6f75849b' and 'a'='a 密码: 1 验证页面参数 ...

  6. 基于Python的Webservice开发(四)-泛微OA的SOAP接口

    一.功能需求 泛微e-cology可以在流程中调用Webservice接口实现与其他系统的联动等复杂功能.但是目前泛微文档中仅提供了调用的方法,但是没有关于接口的相关开发信息. 本次案例是用Pytho ...

  7. 泛微OA e-cology 数据库接口信息泄露学习

    泛微OA e-cology 数据库接口信息泄露 漏洞信息 攻击者可通过存在漏洞的页面直接获取到数据库配置信息.如果攻击者可直接访问数据库,则可直接获取用户数据,甚至可以直接控制数据库服务器:会将当前连 ...

  8. 泛微OA 多版本存在命令执行

    参考 https://blog.csdn.net/qq_41770175/article/details/102821349 https://www.linktrust.net/oday/471.ht ...

  9. 泛微OA e-cology8 数据库链接

    数据库恢复 数据库恢复的恢复请按照如下步骤进行: Ø 重新安装对应版本的数据库服务软件 Ø 通过数据库软件本身的还原工具还原备份数据库文件 Sqlserver可以通过企业管理器直接还原备份文件或者附加 ...

  10. 泛微oa系统com.eweaver.base.DataAction文件sql参数sql注入

    URL/ServiceAction/com.eweaver.base.DataAction?sql=select%201,2,3,4,5,6,7,8,9,233%20from%20DUAL%20

随机推荐

  1. Go读取yaml文件到struct类

    1.yaml文件准备 common: secretid: AKIDxxxxx secretKey: 3xgGxxxx egion: ap-guangzhou zone: ap-guangzhou-7 ...

  2. 使用Lighthouse更好推动项目性能优化,性能指标详解,优化方法,需要关注指标分析

    Lighthouse是什么---一种工具 Lighthouse 是一个开源的自动化工具,用来测试页面性能. 为什么要用Lighthouse----提升用户体验 Web性能可以直接影响业务指标,例如转化 ...

  3. 使用ng-zorro图标库出现the icon redo-o does not exist or is not registered.

    出现这种情况一般是因为没导入你要的图标 可以在项目目录找到这个文件  src\style-icons-auto.ts 然后打开,导入导出里加上你要导入的图标....  就可以了 如果你不知道要怎么加 ...

  4. python学习第七周总结

    C/S模块 1C/S模块: 1.1Client:客户端:客户端也就是你这一端可以接收到的程序,手机app,web网页等,我们可以在客户端页面上向度武器发送请求以及数据,交给服务器处理. 1.2Serv ...

  5. Rust一些学习文档

    <Rust 烹饪书>https://llever.com/rust-cookbook-zh/intro.zh.html <Rust高级编程>https://learnku.co ...

  6. 3分钟教你安装 Dropzone4 文件拖拽增强工具 中文破解版 亲测有效

    Dropzone下载 下载直通车:立即下载 安装教程 打开我给你提供的Dropzone4 安装包 鼠标选中第一个程序拖到第二个程序里 在启动台打开 会出现下面情况 不要慌 点击好  去访达找到对应的软 ...

  7. 为什么sleeping的会话会造成阻塞

    背景 客户反映HIS数据库每天22点后都会发生阻塞,阻塞的源头是一个sleeping的会话,越阻塞越多,只能通过手动KILL掉才能解决,十分不解为什么状态为sleeping的会话会造成阻塞. 现象 在 ...

  8. ROS多机通讯

    1.主机: sudo /etc/hosts 写入从机的地址和用户名: 192.168.31.14    raspi2 2.从机 sudo /etc/hosts 写入主机的地址和用户名 192.168. ...

  9. 一文搞懂 DevOps

    前言 DevOps作为一个热门的概念,近年来频频出现在各大技术社区和媒体的文章中,备受行业大咖的追捧,也吸引了很多吃瓜群众的围观. 那么,DevOps是什么呢? 有人说它是一种方法,也有人说它是一种工 ...

  10. socket.io实现简易聊天室功能

    本文简单介绍使用websocket实现一个简单的聊天室功能,我这里是用vite初始化的vue3项目. 在线体验地址:http://chat.lb0125.com/chat 需要安装的库: socket ...