本帖最后由 nice 于 2014-8-29 13:09 编辑
Q:如何在视图列通过弹出层打开表单详细页面
A:在上图中添加一列,选择脚本模式,然后通过以下脚本即可以弹出层方式打开记录的详细页面.
具体代码如下:- //获取当前域
- var contextPath = getContextPath();
- //获取记录id
- var id = getId();
- //表单id
- var formId = "11e2-c356-f6b50bd5-81ba-61dff3a117cb";
- //获取应用id
- var applicationId = getApplication();
- //弹出层标题
- var titletext = "明细内容";
- //按钮显示文字
- var buttontext = "打开明细";
- //弹出层大小
- var width = "500";
- var height = "500";
- //拼接成url
- var url = contextPath + "/portal/dynaform/document/view.action?_docid="+id+"&_formid="+formId+"&application="+applicationId ;
- //拼接成button
- var rtns = "<input type='button' value='"+buttontext+"' onclick='OBPM.dialog.show({width: "+width+",height: "+height +",url:""+url+"",args:{j:1},title : ""+titletext+"",close: function(rtn) {clearInterval(it);}});'/>";
- rtns;
复制代码 ps1:如果是通过弹出层打开表单页面并且表单有保存并返回或者保存并关闭类型的操作,那么就需要加上如下粗体部分的代码:
OBPM.dialog.show({opener:window.parent,"+width+",height: "+height +",url:\""+url+"\",args:{j:1},title : \"用户选择框\",close: function(rtn) {clearInterval(it);}});
ps2:如果是在视图打开表单页面,关闭表单页面之后希望刷新视图列表,那么对应的需要将代码修改为:
rtns+="onclick='OBPM.dialog.show({"+width+",height: "+height +",url:\""+url+"\",args:{j:1},title : \"用户选择框\",close: function(rtn) {window.location.reload();}});'/>";
google浏览器 如果关闭该窗口:返回null则参考下贴:
http://www.teemlink.com/bbs/viewthread.php?tid=200291&extra=
ps3:openType=277:添加该参数,Myapps会根据表单大小,重新计算弹出层的高度与宽度 |