泛微OA常用js代码块
01.泛微系统alert提示框
Dialog.alert("警告框");
02.checkbox被选中监听事件,监听checkbox复选框 打开表单首先隐藏行 如果checkbox被选中 显示行
<!-- script代码,如果需要引用js文件,请使用与HTML中相同的方式。 -->
<script type="text/javascript">
jQuery(document).ready(function() {
jQuery(".mainTd_6_0").parent().hide();
jQuery("#field6421").click(function() {
if(jQuery("#field6421").attr("checked") == true) {
jQuery(".mainTd_6_0").parent().show();
} else {
jQuery(".mainTd_6_0").parent().hide();
}
});
});
</script>
03.提交验证表单结束日期不能少于开始日期
<!-- script代码,如果需要引用js文件,请使用与HTML中相同的方式。 -->
<script type="text/javascript">
jQuery(document).ready(function() {
checkCustomize = function() { //提交验证
var returnval = true;
var beginDateTime = jQuery("#field5973").val();
var endDateTime = jQuery("#field5974").val();
if(beginDateTime.valueOf() > endDateTime.valueOf()) {
Dialog.alert("开始日期不能大于结束日期");
jQuery("#field5973").val("");
jQuery("#field5974").val("");
jQuery("#field5973span").html("");
jQuery("#field5974span").html("");
returnval = false;
}
return returnval;
}
});
</script>
04.表单与后端进行数据交互并回写
<!-- script代码,如果需要引用js文件,请使用与HTML中相同的方式。 -->
<script type="text/javascript">
jQuery(document).ready(function() {
var reuqestid = jQuery("input[name='requestid']").val();
var xmlx = jQuery("#field7444").val();
var szbm = jQuery("#field7445").val();
var url = "/gfkd/validatexmdm.jsp?type=4&r=" + Math.random();
var param = {
xmlx: xmlx,
szbm: szbm,
reuqestid: reuqestid
};
jQuery.getJSON(url, param, function(Json) {
if(Json.flg) {
jQuery("#field7330").val(Json.msg);
jQuery("#field7330span").text(Json.msg);
} else {
alert(Json.msg);
}
});
});
</script>
05.联系电话必须输入11位数字验证
<!-- script代码,如果需要引用js文件,请使用与HTML中相同的方式。 -->
<script type="text/javascript">
jQuery(document).ready(function() {
jQuery("#field6045").bind("blur", function() {
var a = jQuery("#field6045").val();
if(!(/^1(3|4|5|7|8)\d{9}$/.test(a))) {
alert("联系电话只能输入11位数字!你输入信息有误,请重新输入。");
jQuery("#field6045").attr("value", "");
}
});
});
</script>
06.从选取的的字段自动填入其他字段
<!-- script代码,如果需要引用js文件,请使用与HTML中相同的方式。 -->
<script type="text/javascript">
jQuery(document).ready(function() {
jQuery("#requestname").focus(function() {
var a = jQuery("#field6339span").children().children().text();
jQuery("#requestname").val(a);
});
});
</script>
07.流程表单弹出一个div层次
<script type="text/javascript">
jQuery(document).ready(function() {
checkCustomize = function() {
var flag = top.Dialog.confirm("你确定流程转任务?");
alert(flag);
if(flag == true) {
var wtms = jQuery("#field5913").val();
var bt = jQuery("input[name='requestname']").val();
openDialog("流程转任务", "lbx/workflowTotask.jsp?wtms=" + wtms + "&bt=" + bt);
}
return false;
}
});
function openDialog(title, url) {
var dlg = new window.top.Dialog(); //定义Dialog对象
dialog.currentWindow = window;
dlg.Model = true;
dlg.Width = 100;
dlg.Height = 100;
dlg.URL = url;
dlg.Title = title;
dlg.show();
}
</script>
08.复选框必须选择一个方可提交
<!-- script代码,如果需要引用js文件,请使用与HTML中相同的方式。 -->
<script type="text/javascript">
jQuery(document).ready(function() {
checkCustomize = function() {
var num = 0;
var checkBox = jQuery('input[type="checkbox"]');
checkBox.each(function() {
if(jQuery(this).attr("checked")) {
num++;
}
});
if(num > 0) {
return true;
} else {
alert("没有选中任何印章类别,请至少选中一个!");
return false;
}
return false;
}
});
</script>
09.让流程的签字意见框默认展开在ecology/workflow/request/WorkflowSignInput.jsp最下方添加如下代码
<script type="text/javascript">
jQuery(document).ready(function() {
$("#remarkShadowDivInnerDiv").trigger("click");
});
</script>
10.流程表单里面怎么通过js获取当前登录人员的id
<script type="text/javascript">
var userid = wf__info.f_bel_userid;
var userid = window.__userid;
eg:
jQuery(document).ready(function() {
if(window.console) console.log("wf__info.f_bel_userid=======>" + wf__info.f_bel_userid);
if(window.console) console.log("window.__userid=======>" + window.__userid);
});
</script>
11.如何给单元格添加链接【例如:获取快递单号】
<!-- script代码,如果需要引用js文件,请使用与HTML中相同的方式。 -->
//获取快递单号作为参数跳转到快递100进行快速查询
<script type="text/javascript">
jQuery(document).ready(function() {
var kddh = $("#field7672").val(); //获取快递单号
var hrefstr = "https://www.kuaidi100.com/chaxun?nu=" + kddh;
$("#kddh").wrap("<a href='" + hrefstr + "' target='_blank'></a>");
});
</script>
12.如何让流程表单上的时间只显示5,10,15.....55
<!-- script代码,如果需要引用js文件,请使用与HTML中相同的方式。 -->
//获取快递单号作为参数跳转到快递100进行快速查询
<script type="text/javascript">
function initTimeChooseDiv() {
var html = [];
html.push("<tr>");
for(var i = 0; i < 60; i++) {
var hidden = i % 10 == 0 ? "" : "display:none;"
html.push('<td width="30" align="center" οnmοuseοver="style.backgroundColor=\'#BEEBEE\'" οnmοuseοut="style.backgroundColor=\'#fff\'" style="font-size: 9pt; font-family: Verdana; cursor: pointer; background-color: rgb(255, 255,
255);
' + hidden + '
" οnclick="
getTime(minute ' + i + ')
">' + i + '<input type="
hidden " id="
minute ' + i + '
" value="
' + i + '
"></td>');
}
html.push("</tr>");
jQuery("#meizzDateLayer2").contents().find("#TimeLayer tbody").html(html.join(""));
jQuery("#meizzDateLayer2").width("190").height("76");
}
</script>