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

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. NG-ZORRO + Angular11增加自定义全局样式,不影响其他页面全局样式,仅作用于当前页面

    实现只需要两步 ts import { ViewEncapsulation } from '@angular/core';// 关键代码 @Component({ selector: 'app-tes ...

  2. Loadrunner的函数收集

    1.int web_url( const char *StepName, const char *url, <List of Attributes>, [EXTRARES, <Lis ...

  3. KingbaseES在线wal日志

    KingbaseES数据库日志文件记录数据库的历史操作信息, 包含恢复数据库中的所有事务所需的信息. KingbaseES在线WAL日志: WAL日志: 预写式日志(Write-Ahead Loggi ...

  4. 822. 走方格(acwing)

    题目: 先讲变量 n:右下角的x值 m:右下角的y值 ans:答案(有几种可能) a数组:用来存储向下和向右的动作. x:所在的位置的x值 y:所在位置的y值 x1:下一步可以走到位置的x值 y1:下 ...

  5. C#网络爬虫开发

    1前言 爬虫一般都是用Python来写,生态丰富,动态语言开发速度快,调试也很方便 但是 我要说但是,动态语言也有其局限性,笔者作为老爬虫带师,几乎各种语言都搞过,现在这个任务并不复杂,用我最喜欢的C ...

  6. 使用Hook拦截sendto函数解决虚拟局域网部分游戏联机找不到房间的问题——以文明6为例

    正文 重要提醒(2023-02-13):本文部分内容存在bug,目前正在调试修改,会在一段时间之后更新 重要提醒(2023-02-14):目前已修复主要bug,会在一段时间之后更新,本文计划重写大部分 ...

  7. 基于Kali Linux的渗透测试工具-Discover脚本

    简介  这篇文章主要介绍了基于Kali Linux的渗透测试工具-Discover脚本以及相关的经验技巧,文章约5629字,浏览量510,点赞数9,值得参考! 如果你正在使用Kali Linux,那么 ...

  8. centos7中配置vnc服务多用户

    我用的本地yum源. 注意: 在配置root用户时,设置vnc密码.vncpasswd 添加普通用户时,要先在root用户下添加普通用户(如:vnc1,vnc2) useradd vnc1 passw ...

  9. Cesium Ellipsoid(十四)

    由方程(x/A)^2+(y/b)^2+(z/c)^2=1在笛卡尔坐标系中定义的二次曲面.Cesium主要用来表示行星体的形状.通常使用提供的常量之一,而不是直接构造此对象. 不用new,直接就可以使用 ...

  10. K8S Pod Sidecar 应用场景之一-加入 NGINX Sidecar 做反代和 web 服务器

    Kubernetes Pod Sidecar 简介 Sidecar 是一个独立的容器,与 Kubernetes pod 中的应用容器一起运行,是一种辅助性的应用. Sidecar 的常见辅助性功能有这 ...