zoukankan      html  css  js  c++  java
  • sae后台管理端的js,daterangepicker使用

    原本只为了日期范围选择器看下sae的前端怎么实现

    然后。。。

    公共函数两个文件,第一个是各种插件: 

    typeahead.js 自动完成

            //关键词自动完成
            $('#page-auto-complete').typeahead({
                name: 'twitter-oss',
                local: $SAE['search_keywords'] || [],
                template: [
                    '<a href="{{url}}" target="_blank" class="auto-complete-link">',
                    '<p class="repo-language">{{category}}</p>',
                    '<p class="repo-name">{{name}}</p>',
                    '<p class="repo-description">{{description}}</p>',
                    '</a>'
                ].join(''),
                engine: Hogan,
                limit: 10
            });

    Hogan.js 模版引擎

    json2.js json序列化和反序列化(JSON.stringfy,JSON.parse():为什么我不引入也可以用,在fronzeui中?)

    iframe autoheight 不晓得

    moment.js 时间(这个好啊!当初我还折腾js的时间兼容呢)

    moment('2015-03-19').format('YYYY-MM-DD');
    

      

    http://www.soulteary.com/大牛的插件 不晓得干嘛用,里面的博客很漂亮 估计以前也是sae的前端工程师吧

    i18next 语言

    他们的使用方法

    //切换语言事件
            $('#switch_lang').on('click', function (e) {
                var lang = $(e.target);
                $.cookie('hl', lang.data('lang'));
                window.location.reload();
                return false;
            })
    //获取语言cookie
     var curLang = $.cookie('hl');
            // i18N_CONFIG该在$SAE中
            $SAETOOLS.i18N_ID = $SAETOOLS.i18N({lang: curLang});
    //处理语言,好好研究如果用到
    $SAETOOLS.i18N = function (params) {
        var config = {
            'zh_CN': 1,
            'en_US': 2
        }
        // 待完成根据服务器设置返回默认语言,或者IP地址选择
        var init = function () {
            // 读取COOKIES设置
            var curLang = $.cookie('hl');
            if (curLang) {
                $.i18n.init({
                    lng: curLang,
                    fallbackNS: $SAE['modeName']
                });
                return config[curLang];
            } else {
                // 读取推荐设置
                var jsDefault = $SAETOOLS.i18N_CONFIG;
                if (jsDefault) {
                    $.i18n.init({lng: jsDefault, ns:$SAE['modeName'], resGetPath:'/?m=ajax&a=get_resources&language=__lng__&namespace=__ns__', dynamicLoad:true});
                    return config[jsDefault];
                } else {
                    // 读取服务器推荐设置 待完成
                }
            }
        }
        if (params) {
            if (params.lang) {
                $.i18n.init({
                    lng: params.lang,
                    fallbackNS: $SAE['modeName']
                });
                return config[params.lang];
            } else {
                return init();
            }
    
        } else {
            return init();
        }
    }
    

      

    ===================

    我的任务研究是daterangepicker!

    1.引入它的js和css文件

    2.初始化中文吧

    //初始化daterangepicker
    initDaterangepicker: function(starttime, endtime, callback, options) {
    	options = $SAETOOLS.extend({
    		format: 'YYYY-MM-DD',
    		startDate: starttime,
    		endDate: endtime,
    		showDropdowns: true,
    		locale: {
    			cancelLabel: '关闭',
    			applyLabel: '确认',
    			daysOfWeek: ["日", "一", "二", "三", "四", "五", "六"],
    			monthNames: ['一月', '二月', '三月', '四月', '五月', '六月', '七月', '八月', '九月', '十月', '十一月', '十二月'],
    			fromLabel: '',
    			toLabel: '',
    			customRangeLabel: '自定义'
    		}
    	}, options);
    	return this.daterangepicker(options, callback);
    }

    2.封装一下使用

    if ($('#date-range').length > 0 && $("#chart-main").length < 1) {
        var initdate = function(stime, etime) {
            $('#date-range').initDaterangepicker(stime, etime, function(start, end) {
                var stime = moment(start).format('YYYY-MM-DD');
                var etime = moment(end).format('YYYY-MM-DD');
                $("#stime").val(stime);
                $("#etime").val(etime);
                getPic('beans', '', 'other', stime, etime);
            });
        }
        initdate($('#date-range').data('starttime'), $('#date-range').data('endtime'));
    }

    3.dom结构

    <div class="input-prepend input-group">
                           <span class="add-on input-group-addon">数据日期</span>
                           <input type="text" name="date_range" id="date-range" class="form-control" value="2015-03-19 到 2015-04-18" data-starttime="2015-03-19" data-endtime="2015-04-18"> 
                        </div>
  • 相关阅读:
    java四种线程池的使用
    @Autowired@Resource@Qualifier的区别
    Unsupported major.minor version 52.0解决办法
    CentOS7配置防火墙
    redis 集群搭建
    excludepathpatterns 无效
    解决 SpringBoot 没有主清单属性
    Java Web应用中调优线程池的重要性
    spring boot application properties配置详解
    Class path contains multiple SLF4J bindings.
  • 原文地址:https://www.cnblogs.com/jdhu/p/4437401.html
Copyright © 2011-2022 走看看