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

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. word取消保护

    没有 文档的保护密码 可尝试用此方式,亲测有效 Excel.PPT 应该也可以,没试过 1.新建空白文档 2.插入.对象 3.点击[对象]右边的箭头,选择被加密的文件. 建议两个选项都试一下,我的第二 ...

  2. A排列方案

    递归实现排列型枚举 把 1∼n 这 n 个整数排成一行后随机打乱顺序,输出所有可能的次序. 输入格式 一个整数 n. 输出格式 按照从小到大的顺序输出所有方案,每行 1 个. 首先,同一行相邻两个数用 ...

  3. NET-SynchronizationContext

    title: .NET SynchronizationContext date: 2022-12-06 09:38:53 tags: - .NET 前言 最近在看CAP的源码,经常能看到Configu ...

  4. (11)go-micro微服务雪花算法

    目录 一 雪花算法介绍 二 雪花算法优缺点 三 雪花算法实现 四 最后 一 雪花算法介绍 雪花算法是推特开源的分布式ID生成算法,用于在不同的机器上生成唯一的ID的算法. 该算法生成一个64bit的数 ...

  5. 使用iframe引入文件后设置响应式宽高以及其他问题解决;

    第一 :引入iframe后背景色解决: 需要先设置 被引入文件的body样式 第二:滚动以及其他样式需要设置,span是为了小屏准备的,处理小屏时候元素距离顶部高度问题: 这个是span 的样式 然后 ...

  6. Java 进阶P-8.9+P-8.10

    文件流 File Input Stream File Output Stream 对文件作读写操作 实际工程中已经较少使用 更常用的是以在内存数据或通信数据上建立的流,如数据库的二进制数据读写或网络端 ...

  7. 逗号(,)运算符在Javascript中

    逗号运算符 逗号运算符是二元运算符,它能够先执行运算符左侧的操作数,然后再执行右侧的操作数,最后返回右侧操作数的值. 逗号表达式: 一般形式:表达式1,表达式2,表达式3,......表达式n 求解过 ...

  8. vscode + vim 快捷键

    多行编辑 按V选中行,按大写I即可进入编辑模式 撤销恢复 CTRL + z 撤销 CTRL + shift + z 恢复 代码自动对齐 Alt + shift + f

  9. C语言-补漏 -内存管理

    8. 全局就是简简单单编写的 静态函数--只能在当前文件内使用的函数

  10. 图说论文《An Empirical Evaluation of In-Memory Multi-Version Concurrency Control》

    本文从< An Empirical Evaluation of In-Memory Multi-Version Concurrency Control>摘取部分图片,来介绍 MVCC. 该 ...