1、用文本框,点击一个按钮时,引用一个js,使其弹出一个对话框,对话框中嵌入下拉项的模板(因模板中的数据量是不受限制的),在此模板列出的所有下拉项中,选择某条记录,点击确定后,就把选择的对应值赋给文本框,且与此同时也会把对话框关闭。效果如下:下面介绍如上问题的解决方案,如上两个模板的制作:下拉选项的模板与参数界面选择的模板
2、子喋碾翡疼模板设计新建工作簿,添加数据集ds1,SQL语句:SELECT * FROM [STSCORE]将剞麽苍足数据列name拖拽到B1单元格中并设置其控件类型为文本型,控件名称为record。点击模板>模板web属性>填报页面设置,添加自定义按钮将按钮名称设置为确定,并添加其它按钮,给自定义按钮增加如下js代码:var currentCell = contentPane.curLGP.currentTDCell; //当前选中的单元格var val = FR.getCellValue(currentCell); //拿取当前选中的单元格var form = window.parent.form; //拿取当前页面的父窗口(即获取参数界面的form)form.getWidgetByName("p1").setValue(val); //给文本控件的格子(A2)赋值valwindow.parent.FR.closeDialog(); //确定获取值后,关闭取消父窗口的对话框window.parent.FR.destroyDialog();
3、主模板设计切换到参数设计黢茕茚痔界面,添加一个文本类型控件,并将控件命名为p1。再添加一个按钮类型控件,并将按钮命名为选择记录, 添加点击事件,在function fun(){}函数中写入如下JS语句:window.form = this.options.form; //把参数界面的form赋值给全局变量var $iframe = $("<iframe id='inp' name='inp' width='100%' height='100%' scrolling='no' frameborder='0'>"); // iframe参数的命名及宽高等$iframe.attr("src", "${servletURL}?reportlet=doc/Parameter/jsson.cpt&op=write"); //jsson.cpt为以上所说的点击选择按钮时,引用js后弹出一个对话框,对话框中嵌入的下拉选项模板var o = {title : "请选择记录项",width : 460,height: 350};FR.showDialog(o.title, o.width, o.height, $iframe,o); //首先弹出对话框
4、分页预览选择father.cpt,点击分页预览,点击选择记录按钮,效果如上。
5、实现步骤—填报界面上述实例是在参数(表单)界面下,如果在填报页面下,上述js有所改动,如下。子模板中的工具栏自定义按钮的js事件代码如下:var currentCell = contentPane.curLGP.currentTDCell; //当前选中的单元格var val = FR.getCellValue(currentCell); //拿取当前选中的单元格var form = window.parent.contentPane; //拿取当前页面的父窗口(即获取填报界面)form.setCellValue(0,1,val); //给文本控件的单元格(A2)赋值val,0代表第一列,1代表第2行window.parent.FR.closeDialog(); //确定获取值后,关闭取消父窗口的对话框window.parent.FR.destroyDialog();