Angularjs学习笔记3_datepicker
1.使用jquery-ui +angular
<script src="http://libs.useso.com/js/jquery/1.11.1/jquery.js"></script><script src="http://libs.useso.com/js/jqueryui/1.10.0/jquery-ui.js"></script>
<script type='text/javascript' src='http://libs.useso.com/js/angular.js/1.2.9/angular.js'></script> <div class="row">
<input type="text" datepicker1 ng-model="myObject1" />
<input type="text" datepicker2 ng-model="myObject2" />
</div> app.directive('datepicker1', function() {
return function(scope, element, attrs) {
element.datepicker({
inline: true,
dateFormat: 'dd.mm.yy',
onSelect: function(dateText) {
var modelPath = $(this).attr('ng-model');
//putObject(modelPath, scope, dateText);
scope.$apply();
}
});
}
});
app.directive('datepicker2', function() {
return {
restrict: 'A',
require : 'ngModel',
link : function (scope, element, attrs, ngModelCtrl) {
$(function(){
element.datepicker({
dateFormat:'dd/mm/yy',
onSelect:function (date) {
scope.$apply(function () {
ngModelCtrl.$setViewValue(date);
});
}
});
});
}
}
});
2.使用 bootstrap + angular
<script type='text/javascript' src='http://libs.useso.com/js/angular.js/1.2.9/angular.js'></script><link rel="stylesheet" href="http://apps.bdimg.com/libs/bootstrap/3.2.0/css/bootstrap.min.css">
<script src="http://cdn.bootcss.com/angular-ui-bootstrap/0.11.2/ui-bootstrap-tpls.js"></script> <div class="row">
<section ng-controller="dateDemo" class="col-md-6" style="float:none; margin:5px auto; background:#fff; padding:5px;">
//{{}} 双花括号为angular的取值表达式
<pre class="">选定的日期是:<em>{{dt | date:'fullDate'}}</em></pre>
<h4>在线:</h4>
<section style="display:inline-block; min-height:240px;">
<datepicker ng-model="dt" min-date="minDate" show-weeks="true" class="wellwell-sm"></datepicker>
</section>
<br>//ng-model 绑定dt模块 , min-date 最少日期 show-weeks= ture 显示周
<h4>弹出:</h4>
<div class="row">
<div class="col-md-6">
<p class="input-group">
<input type="text" class="form-control" datepicker-popup="{{format}}" ng-model="dt" is-open="opened" min-date="minDate" max-date="'2014-12-30'" datepicker-options="dateOptions" date-disabled = "disabled(date,mode)" ng-required="true" close-text="Close">
<span class="input-group-btn">
<button type="button" class="btn btn-default" ng-click="open($event)">
<i class="glyphicon glyphicon-calendar"></i>
</button>
</span>
</p>
</div>
</div>
<br>ng-options 循环添加option
<div class="row">
<div class="col-md-6">
<label for="">格式:</label>
<select name="" id="" class="form-control" ng-model="format" ng-options="f for f in formats"><option value=""></option></select>
</div>
</div>
<hr>
<div>
<button type="button" class="btn btn-info btn-sm" ng-click="today()">今天</button> //一堆点击事件没什么好说的
<button type="button" class="btn btn-sm btn-default" ng-click="dt = '2008-08-08'">2008-08-08</button>
<button type="button" class="btn btn-sm btn-danger" ng-click="clear()" >清除</button>
<button type="button" class="btn btn-sm btn-default" ng-click="toggleMin()" tooltip="After today">闵日期</button>
</div>
</section>
</div> var app = angular.module('a8_8', ['ui.bootstrap']) ; app.controller('dateDemo',function($scope){
$scope.today = function(){ // 创建一个方法,
$scope.dt = new Date(); // 定义一个属性来接收当天日期
};
$scope.today(); // 运行today方法
$scope.clear = function(){ //当运行clear的时候将dt置为空
$scope.dt = null;
}
$scope.open = function($event){ // 创建open方法 。 下面默认行为并将opened 设为true
$event.preventDefault();
$event.stopPropagation();
$scope.opened = true;
}
$scope.disabled = function(date , mode){
return (mode === 'day' && (date.getDay() === 0 || date.getDay() === 6))
}
$scope.toggleMin = function(){
$scope.minDate = $scope.minDate ? null : new Date(); //3元表达式,没啥好说的
}
$scope.toggleMin();
$scope.dateOptions = {
formatYear : 'yy',
startingDay : 1
}
$scope.formats = ['dd-MMMM-yyyy','yyy/MM/dd','dd.MM.yyyy','shortDate']; //日期显示格式
$scope.format = $scope.formats[0]; // 将formats的第0项设为默认显示格式
});
Angularjs学习笔记3_datepicker的更多相关文章
- AngularJs学习笔记--Forms
原版地址:http://code.angularjs.org/1.0.2/docs/guide/forms 控件(input.select.textarea)是用户输入数据的一种方式.Form(表单) ...
- AngularJs学习笔记--expression
原版地址:http://code.angularjs.org/1.0.2/docs/guide/expression 表达式(Expressions)是类Javascript的代码片段,通常放置在绑定 ...
- AngularJs学习笔记--directive
原版地址:http://code.angularjs.org/1.0.2/docs/guide/directive Directive是教HTML玩一些新把戏的途径.在DOM编译期间,directiv ...
- AngularJs学习笔记--Guide教程系列文章索引
在很久很久以前,一位前辈向我推荐AngularJs.但当时我没有好好学习,仅仅是讲文档浏览了一次.后来觉醒了……于是下定决心好好理解这系列的文档,并意译出来(英文水平不足……不能说是翻译,有些实在是看 ...
- AngularJs学习笔记--bootstrap
AngularJs学习笔记系列第一篇,希望我可以坚持写下去.本文内容主要来自 http://docs.angularjs.org/guide/ 文档的内容,但也加入些许自己的理解与尝试结果. 一.总括 ...
- AngularJs学习笔记--html compiler
原文再续,书接上回...依旧参考http://code.angularjs.org/1.0.2/docs/guide/compiler 一.总括 Angular的HTML compiler允许开发者自 ...
- AngularJs学习笔记--concepts(概念)
原版地址:http://code.angularjs.org/1.0.2/docs/guide/concepts 继续.. 一.总括 本文主要是angular组件(components)的概览,并说明 ...
- AngularJS学习笔记2——AngularJS的初始化
本文主要介绍AngularJS的自动初始化以及在必要的适合如何手动初始化. Angular <script> Tag 下面通过一小段代码来介绍推荐的自动初始化过程: <!doctyp ...
- AngularJs学习笔记--Using $location
原版地址:http://code.angularjs.org/1.0.2/docs/guide/dev_guide.services.$location 一.What does it do? $loc ...
随机推荐
- RPD Volume 172 Issue 1-3 December 2016 评论03
Using Stable Free Radicals to Obtain Unique and Clinically Useful Data In Vivo in Human Subjects Abs ...
- [BZOJ5463][APIO2018]铁人两项(圆方树DP)
题意:给出一张图,求满足存在一条从u到v的长度大于3的简单路径的有序点对(u,v)个数. 做了上一题[HDU5739]Fantasia(点双连通分量+DP),这个题就是一个NOIP题了. 一开始考虑了 ...
- AOJ 2266 Cache Strategy(费用流)
[题目链接] http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=2266 [题目大意] 有M个桶,N个球,球编号为1到N,每个球都有重量 ...
- 【二分答案】【最短路】bzoj1614 [Usaco2007 Jan]Telephone Lines架设电话线
对于二分出的答案x而言,验证答案等价于将所有边权>x的边赋成1,否则赋成0,然后判断从1到n的最短路是否<=K. #include<cstdio> #include<cs ...
- Bootstrap-table实现动态合并相同行(表格同名合并)
写在前面: 有时候表格的需求就是奇奇怪怪的,最近要做的表格需要实现当紧挨着的记录的某一列的行元素内容相同,就将其合并.要是不是相同的就不合并.如果表格数据的顺序不需要被改变,这个样子是可以很简单就完成 ...
- 敏捷开发中的sprint是什么意思_百度知道
敏捷开发中的sprint是什么意思_百度知道 敏捷开发中的sprint是什么意思 未成年RB21 | 浏览 4208 次 推荐于2016-02-27 15:19:02 最佳 ...
- 【Node.js】1.安装步骤
1.在官网找到对应版本下载 2.点击安装 3.检查安装成功 path可以看到node.js的安装目录已经自动配置在环境变量path中了 如果node -v或者node --version不能正确展示当 ...
- Devexpress汉化修改 已经汉化过后生成的*.resources.dll文件 z
Devexpress 是很好的第三方控件.但是需要汉化,在从网上下载的zh-CN文件夹里都是*.resources.dll文件,由于汉化的工作量很大,难免有些地方汉化 错误或者不合适(如下图).花了些 ...
- Error:Execution failed for task ‘:app:processDebugManifest’.
Error:Execution failed for task ':app:processDebugManifest'. > Manifest merger failed : Attribute ...
- android BSP与硬件相关子系统读书笔记(1)android BSP移植综述
从linux驱动转行至Android驱动开发大半年了,一开始就产生了一个很纠结目标和问题,就是不停的google如何porting android!这个问题得到的结果对于初出茅庐的我,感到迷惘.随着工 ...