本文转自:http://www.cnblogs.com/Benoly/p/4109460.html

最近项目上了AngularJS,而原来使用的日期控件的使用方式也需要改变,于是开始了倒腾,看了官方的例子,可以使用AngularJS的directive做简单的处理,这样在html里直接使用申明的的形式即可使用了。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
<!doctype html>
<html ng-app="datepickerApp">
    <head>
        <link type="text/css" rel="stylesheet" href="bootstrap/css/bootstrap.css" />
        <link type="text/css" rel="stylesheet" href="bootstrap-datepicker/css/datepicker3.css" />
        <script src="jquery/jquery-1.11.1.min.js"></script>
        <script src="angular.js"></script>
        <script src="bootstrap/js/bootstrap.js"></script>
        <script src="bootstrap-datepicker/js/bootstrap-datepicker.js"></script>
    </head>
    <body>
      <input type="text" class="datepicker" >
      <hr>
        <div ng-controller="datepickerController">
            <input type="text" bs-Datepicker ng-model="vm.selectedDate">
            <button ng-click="vm.show($event)">Date SELECT</button>
 
            <br>
            vm.selectedDate: {{vm.selectedDate}}
        </div>
         
        <script type="text/javascript">
            //bootstrap-datepicker
            var datepicker1 = $('.datepicker').datepicker()
                .on('changeDate',function (ev){
                    var newDate = new Date(ev.date)                
                    datepicker1.hide()
 
                    alert(newDate)
                })
                .data('datepicker')
 
 
            //angular
            var app = angular.module('datepickerApp', [])
             
            //angular-directive
            app.directive('bsDatepicker',function(){
                return {
                    restrict : 'EA',
                    scope:{
            model:"=ngModel"
            },
                    link : function(scope,element,attrs,ctrl){
                        var datepicker1 = $(element).datepicker()
                            .on('changeDate',function (ev){
                                var newDate = new Date(ev.date)                
                                datepicker1.hide()
 
                                alert(newDate)
                            })
                            .data('datepicker')
                    }
                }
            })
 
            app.controller('datepickerController',function ($scope){
                 
                var vm = $scope.vm = {
                    selectedDate : new Date(),
                    setDate : function(date){
                        selectedDate = date
                    },
                    clearDate : function(){
                        selectedDate =  null
                    },
                    show : function($event){
                         
                    },
                    hide : function(){
 
                    }
                }
                 
 
      
 
 
 
            })
 
        </script>
    </body>
</html>

[转]通过AngularJS directive对bootstrap日期控件的的简单包装的更多相关文章

  1. [整理]通过AngularJS directive对bootstrap日期控件的的简单包装

    最近项目上了AngularJS,而原来使用的日期控件的使用方式也需要改变,于是开始了倒腾,看了官方的例子,可以使用AngularJS的directive做简单的处理,这样在html里直接使用申明的的形 ...

  2. bootstrap日期控件(双日期、清空等问题解决)

    bootstrap以它优美的外观和丰富的组件,使它成为目前最流行的前端框架.在项目开发中,我们使用它的日期控件确实遇到了一些问题: 1.日期控件后面两个图标点击触发失效 2.双日期关联问题 3.双日期 ...

  3. 【经验】Angularjs 中使用 layDate 日期控件

    layDate 控件地址:http://laydate.layui.com/ 前情:原来系统中使用的日期控件是UI bootstrap(地址:https://angular-ui.github.io/ ...

  4. bootstrap日期控件在火狐下的模态框中选择时间下拉菜单无效的解决办法

    今天收到程序组提交的一个兼容BUG,在火狐中使用模态框加载日期控件时选择时间下拉菜单没有效果(不能点击),而在谷歌中却是好的, 排错思路:1,在当前页面主层放置一个时间控件,测试通过 2,在ajax加 ...

  5. bootstrap 日期控件常用选项

    使用bootstrap作为UI基础之后,为了尽可能的保持系统风格的一致性,通常我们不太会考虑再引入My97DatePicker作为日期控件. 作为潜在实现的选择之一,http://www.bootcs ...

  6. jsp日期插件My97DatePicker 强大的日期控件 使用方便简单

    本文属转载(希望对编程爱好者有所帮助)详情请访问官方网站 http://www.my97.net/dp/index.asp 一. 简介 1. 简介 目前的版本是:4.7 2. 注意事项 My97Dat ...

  7. jsp日期插件My97DatePicker 强大的日期控件 使用方便简单(转)

    本文属转载(希望对编程爱好者有所帮助)详情请访问官方网站 http://www.my97.net/dp/index.asp 一. 简介 1. 简介 目前的版本是:4.7 2. 注意事项 My97Dat ...

  8. bootstrap 日期控件 bootstrap-datepicker

    http://www.bootcss.com/p/bootstrap-datetimepicker/

  9. bootstrap日期控件

    http://www.bootcss.com/p/bootstrap-datetimepicker/ <link href="js/b/css/bootstrap-datetimepi ...

随机推荐

  1. C#根据CPU+磁盘标号来注册软件

    很多私人软件都需要自己的作品出售给别人只能一台电脑使用,不可以随便一个电脑都可以运行自己的软件,所以就有了软件注册限制的控制,收集了一个注册软件的帮助类,分享记录一下. 功能介绍:    根据CPU+ ...

  2. wcf 双工

    服务器 [ServiceContract(Namespace="http://www.artech.com/", CallbackContract = typeof(ICallba ...

  3. java.lang.NullPointerException org.apache.jsp.WEB_002dINF.pages.imagecheck.test_jsp._jspInit(test_jsp.java:22)的原因

    HTTP Status 500 - type Exception report message description The server encountered an internal error ...

  4. php中的不常用数组函数(一)(数组中元素的键和值对调 array_flip())

    array_flip($arr); //交换数组中的键和值. //如下所示,如果$arr中有相同的值.交换之后 会被旧的覆盖,最后一个有效. /***********array_flip(交换数组中的 ...

  5. PHP学习笔记:利用时间和mt_rand函数获取随机名字

    这个知识会在文件上传等场合用到,还没学面向对象,现在用函数形式呈献给各位,代码都做了备注,有不懂得可以在线提问. <?php /** * Created by PhpStorm. * User: ...

  6. 两种设计模式(2)==>>"单例"

    所谓“单例”: 单例模式是一种常用的软件设计模式.在它的核心结构中只包含一个被称为单例的特殊类.通过单例模式可以保证系统中一个类只有一个实例而且该实例易于外界访问,从而方便对实例个数的控制并节约系统资 ...

  7. Exchange 2013 、Lync 2013、SharePoint 2013

    Office办公系列 在企业中广泛应用,目前服务的客户当中,部分客户已经应用到了 Exchange.Lync.CRM.SharePoint等产品,在开发当中多多少少会涉及到集成,为了更好的服务客户.了 ...

  8. 我的一个javascript项目的重构历程

    一个月前,组内的一个内部使用的浏览器比价插件的前端部分交给我来维护,作为一个老司机我是拒绝的,自己的代码都是坑,还要去给别人填坑,搞笑地说. 呵呵,能拒绝么.... 好好享受吧,骚年...... 第一 ...

  9. 实验12:Problem I: 成绩排序

    Home Web Board ProblemSet Standing Status Statistics   Problem I: 成绩排序 Problem I: 成绩排序 Time Limit: 1 ...

  10. 结合源代码详解android消息模型

    Handler是整个消息系统的核心,是Handler向MessageQueue发送的Message,最后Looper也是把消息通知给Handler,所以就从Handler讲起. 一.Handler H ...