FineReport常用JavaScript函数总结(6月13日更新控件相关)

楼主
我是社区第128位番薯,欢迎点我头像关注我哦~

总结下FineReport函数,都是以FineReport7.0为标准,之前的不保证正确,我都一个个测试了,希望能对大家有帮助

一、对话框相关函数
1.普通弹出对话框FR.showDialog : function(title, width, height, innerContent, config);
参数说明
title:弹出对话框的标题
width:弹出对话框的宽度(px)
height:弹出对话框的高度(px)
innerContent:对话框内显示的内容(html)
config:
        modal:是否模态对话框(模态对话框即必须关闭此对话框才能点击其他地方),默认为true
        closable:是否显示对话框标题栏上的关闭按钮,默认为true
        collapsible:是否显示对话框标题栏上的收起按钮,默认为false
        resizeable:是否可以手动调整对话框的大小,默认为true

调用示例:FR.showDialog("测试", 300, 300, "<p>test dialog</p>", {collapsible:true});
2.嵌套Iframe的弹出对话框
FR.showIframeDialog : function(config);
参数说明
config:
        url:内嵌的iframe的src属性,也就是iframe要访问的地址(可选)
        iframe:一个表示iframe的jQuery对象(可选)
        title: 弹出对话框的标题
        width:弹出对话框的宽度(px),默认为350
        height:弹出对话框的高度(px),默认为480
        modal:是否模态对话框(模态对话框即必须关闭此对话框才能点击其他地方),默认为true
        closable:是否显示对话框标题栏上的关闭按钮,默认为true
        collapsible:是否显示对话框标题栏上的收起按钮,默认为false
        resizeable:是否可以手动调整对话框的大小,默认为true

3. 提交信息对话框,该对话框可以为提交数据到服务器中的等待时间提供一个较好的体验
FR.showSubmitDialog : function(o);
参数水明
config:
        url:提交数据的服务器地址
        width:弹出对话框的宽度(px),默认为200
        height:弹出对话框的高度(px),默认为120
        ajax参数:jQuery.ajax的所有配置都可以加在这里

4.关闭对话框
FR.closeDialog();
5.销毁对话框
FR.destroyDialog();
二、模态对话框,用于模拟浏览器自带的alert,prompt等提示对话框,但功能更加丰富
1.FR.Msg.alert : function(title, message, callback);
参数说明
title:模态对话框的标题
message:模态对话框显示的消息
callback:点击确定后要执行的回调函数,如果该参数为数字,则表示在给定的毫秒后该模态对话框将自动关闭

2.FR.Msg.confirm: function(title, message, callback);
参数说明:同上

3.FR.Msg.prompt: function(title, message, value, callback);
参数说明:同上

4.FR.Msg.toast : function(message);调用该函数将会在浏览器右侧弹出一个具有给定信息的消息块,并在5秒后自动消失
参数说明
message:消息块中显示的文本信息

三、扩展javascript对象的函数
1.数组
indexOf
var arr = ["abc", "def", "xyz"];
arr.indexOf("def") == 1;    -----true
arr.indexOf("wxt") == -1; ------true

remove
var arr = ["abc", "def", "xyz"];
arr.remove("def")得到数组["abc", "xyz"]
2.字符串
startWith
var str = "abcdefg";
str.startWith(abc);  ------true

endWith
var str = "abcdefg";
str.endWith("fg"); -------true
四、控件相关FR.Widget具有以下常用方法

    -----事件部分-----

        fireEvent : function();
        函数说明:
                该函数的的作用是执行绑定在Widget上的事件。
                第一个参数表示要执行的事件的名称,后面的参数表示是事件要传递的参数。
        使用示例:
                var btn = form.getWidgetByName("test");
                btn.fireEvent("click");
                这段代码将让指定的按钮执行点击事件。

        on : function(eventName, fn);
        函数说明:
                该函数的作用是给Widget绑定一个事件。
        参数说明:
                eventName:绑定的事件的名称,可以根据自己的需求随意写。
                fn:绑定的事件的执行函数。
        使用示例:
           先给按钮绑定一个自定义事件,比如可以在按钮的初始化事件中写如下js代码
           var btn = form.getWidgetByName("test");
           btn.on("demoEvent", function() {alert("OK")});
           在另外一个地方,如果要让该按钮执行这个函数function(){alert("OK")};
           那么就可以这样用,先获取这个按钮
           var myBtn = form.getWidgetByName("test");
           myBtn.fireEvent("demoEvent");
           就会在屏幕上弹出“OK”的对话框了。

        once : function(eventName, fn);
        函数说明:
                这个函数和on函数基本差不多,唯一不同的地方在于,这个函数只能够执行一次,以后再也不会出发了。

        un : function(eventName, fn);
        函数说明:
                这个函数和on函数想法,是把绑定的事件去除掉,第二个参数可选,如果第二个参数为空说明要把所有名为eventName的事件都去除掉。

    purgeListeners : function();
    函数说明:
            清除Widget所绑定的所有控件。

    -----属性部分-----
    isEnabled : function();
    函数说明:
            判断控件是否是可用,可用则返回true,否则返回false。
            
    setEnable : function(arg);
    函数说明:
            设置控件的可用性。
    参数说明:
        arg:该参数必须是一个布尔类型的变量(true/false),否则该函数将不起作用,true表示设置控件为可用。

    isVisible : function();
    函数说明:
            判断控件是否可见,可见则返回true,否则返回false。
            
    setVisible : function(arg);
    函数说明:
            设置控件的可见性。
    参数说明:
            arg:该参数必须是一个布尔类型的变量(true/false),否则该函数将不起作用,true表示设置控件为可见。五、参数界面作为一个特殊的控件,作为单独的一节
        参数界面是一个FR.Form对象,该对象具有以下公共方法供外部调用:

        getValueByName : function(widgetName);
        函数说明:
                获取指定控件的值。

        getWidgetByName : function(widgetName);
        函数说明:
                获取指定控件。

    在参数界面的控件中可以通过如下代码获取该参数界面的FR.Form对象:
            this.options.form;
    从而通过此对象再根据getWidgetByName可以获取参数界面中的其他控件。

    参数界面中具有特殊作用的查询按钮,其点击事件函数
            if (this.options.form != null && $.isFunction(this.options.form.formSubmit)) {
                this.options.form.formSubmit({
                url : "${servletURL}?op=fr_dialog&cmd=parameters_d&sessionID=${sessionID}",
                asyn : true,
                callback : function(res, status) {_g().loadContentPane();}}                                
                );
                var self = this;
                _g().once("afterload", function() {
                        self.enable();
                })
        }
     可以在自定义的按钮的点击中添加上面的代码,让自定义的按钮具有查询按钮的功能。
六、分页预览相关
待完成

七、填报相关

待完成


分享扩散:
参与人数 +5 F豆 +205 理由
gaojianqq888 + 200
竹林舞剑 + 1 赞一个
windy_gui + 1
ning-baobao + 1 感谢参与
qzlf + 2 很给力!

查看全部评分

沙发
发表于 2012-6-13 08:37:15
适用于初学者,不过给个置顶以示鼓励
板凳
发表于 2012-6-13 08:55:14
很好的,收藏!支持!
地板
发表于 2012-6-13 11:20:10
加油,控件呢?
5楼
发表于 2012-7-9 11:22:05
终于有类似的DD出来了
6楼
发表于 2012-7-27 16:37:10
:lol 今天才发现:curse:
7楼
发表于 2012-7-30 13:18:46
:lol问题我都没办法用上
8楼
发表于 2012-8-3 13:08:57
哈 谢谢啦 !谢谢分享
9楼
发表于 2012-8-3 18:06:41
这个只有恨专业的人才看的懂吧
10楼
发表于 2012-8-17 22:45:15
收藏
11楼
发表于 2012-8-19 09:49:22
谢谢分享:lol:lol:lol
12楼
发表于 2012-8-19 12:28:35
至今为止还没看完
13楼
发表于 2012-8-20 18:26:20
不错,顶的人不多啊,快点继续
14楼
发表于 2012-8-21 14:43:15
:$等待楼主的后续:$:$:$
15楼
发表于 2012-8-21 15:48:48
支持一下
16楼
发表于 2012-8-21 19:14:22
学习~~~~~~~~~~
17楼
发表于 2012-8-23 06:44:20
上个图文解说吧?
18楼
发表于 2012-8-27 09:17:44
收藏下   
19楼
发表于 2012-8-27 09:19:09
咋没有收藏按钮的
20楼
发表于 2012-8-27 09:19:41
怎么没有后续了?这不是忽悠我们么。
21楼
发表于 2012-8-27 09:37:01
FR.showIframeDialog : function(config);
参数说明
config:
        url:内嵌的iframe的src属性,也就是iframe要访问的地址(可选)
        iframe:一个表示iframe的jQuery对象(可选)
        title: 弹出对话框的标题
        width:弹出对话框的宽度(px),默认为350
        height:弹出对话框的高度(px),默认为480
        modal:是否模态对话框(模态对话框即必须关闭此对话框才能点击其他地方),默认为true
        closable:是否显示对话框标题栏上的关闭按钮,默认为true
        collapsible:是否显示对话框标题栏上的收起按钮,默认为false
        resizeable:是否可以手动调整对话框的大小,默认为true
这个方法在655里打开页面的大小和title都没效果,哪位高手帮忙调试下。
22楼
发表于 2012-8-27 10:35:17
高手
23楼
发表于 2012-8-27 10:39:30
牛人
24楼
发表于 2012-8-28 20:08:24
太牛了
25楼
发表于 2012-8-30 10:43:36
这个还不错,好帖子,大家谈谈
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

52回帖数 33关注人数 46412浏览人数
最后回复于:2022-6-19 13:41

返回顶部 返回列表