帝王谷资源网 Design By www.wdxyy.com
写了一个生日联动插件具体的效果是这样的:
具体的数据
我取得数据是今年的数据,如果是想要做三级联动的日期插件,改一下时间就好了
var app=angular.module("dataPicker",[])
app.factory('dataPicker', ['$http', '$q', function ($http, $q) { return { query: function () { var lengthYear=100; var dataPicker={ month:[], year:[], day:[] }; var data = new Date(); var nowyear = data.getFullYear(); for(var i=nowyear,j=0; i>nowyear-lengthYear;i--,j++){ dataPicker.year[j]=i; } for(var i=0;i<=11;i++){ if(i<9){ dataPicker.month[i]='0'+(i+1); }else{ dataPicker.month[i]=String(i+1); } } return dataPicker; } } }])
directive插件的主要内容
app.directive('selectDatepicker', function ($http,dataPicker) { return { restrict: 'EAMC', replace: false, scope: { birthday: '=birthday' }, transclude: true, template: '<span>生日</span>'+ '<select class="sel_year" ng-model="birY" ng-change="changeYear()"><option ng-repeat="x in yearAll">{{x}}</option></select>'+ '<select class="sel_month" ng-model="birM" ng-change="changeMonth()" ng-disabled="birY==\'\'"><option ng-repeat="x in MonthAll">{{x}}</option> </select>'+ '<select class="sel_day" ng-model="birD" ng-disabled="birM==\'\'" ng-change="changeDay()"><option ng-repeat="x in DayAll">{{x}}</option></select>', link: function (scope, element){ var arr=[]; scope.birthday=scope.birthday=='0000-00-00'"":scope.birthday var shuju=dataPicker.query() scope.yearAll=shuju.year; scope.MonthAll=shuju.month; if(scope.birthday){ scope.birY=scope.birthday.birthday.split('-')[0]; scope.birM=String(scope.birthday.birthday.split('-')[1]) }else{ scope.birY=""; scope.birM=""; } scope.getDaysInOneMonth=function(year, month){ var month1 = Number(month); month1=parseInt(month1,10) var d= new Date(Number(year),month1,0); return d.getDate(); } scope.getDayArr=function(day){ shuju.day=[]; for(var i=0; i<day;i++){ if(i<9){ shuju.day[i]='0'+(i+1) }else{ shuju.day[i]=String((i+1)); } } } if(scope.birthday){ var day=scope.getDaysInOneMonth(scope.birthday.birthday.split('-')[0],scope.birthday.birthday.split('-')[1]); scope.getDayArr(day) scope.DayAll=shuju.day; scope.birD=scope.birthday.birthday.split('-')[2] } scope.changeYear=function(){ scope.birD=""; scope.birM=""; } scope.changeMonth=function(){ var day=scope.getDaysInOneMonth(scope.birY,scope.birM); console.log(day) scope.getDayArr(day); scope.DayAll=shuju.day; scope.birD=""; } scope.changeDay=function(){ scope.returnDate(); } scope.returnDate=function(){ if(!scope.birD||!scope.birY||!scope.birM){ scope.birthday.returnValue=""; }else{ arr[0]=scope.birY; arr[1]=scope.birM; arr[2]=scope.birD; scope.birthday.returnValue=arr.join("-"); } } } } }) });
html
<div select-datepicker birthday="birthday">
js 传入的数据
$scope.birthday={ birthday:1993-01-20, returnValue:'', }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
帝王谷资源网 Design By www.wdxyy.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
帝王谷资源网 Design By www.wdxyy.com
暂无评论...
更新日志
2024年11月01日
2024年11月01日
- 外媒:《死亡岛2》或是今年PS+2档最受欢迎游戏
- 群星.1997-世纪之歌第二辑6CD【宝丽金】【WAV+CUE】
- 邵萱.1997-是是非非【捷登】【WAV+CUE】
- 巫启贤.1998-我是你的【风格】【WAV+CUE】
- 【原神手游】「月草的赐慧」祈愿
- 【原神手游】「赤团开时」祈愿
- 【原神手游】「法器·千夜浮梦」介绍
- 陈立农《青春为名 上部曲 - 恋》[FLAC/分轨][290.58MB]
- 张乔西《明星》[320K/MP3][55.23MB]
- 张乔西《明星》[FLAC/分轨][143.08MB]
- 《P3R:Episode Aegis》:重复爬塔的悲伤
- 《公会传说:遗落的世界》EA版评测:怀旧感CRPG还在追我
- 诛仙老玩家会喜欢《诛仙世界》吗?
- ABC唱片-《母帶直刻神奇黑胶CD》[FLAC+CUE]
- 柏菲·李一凤《真爱过关》限量开盘母带ORMCD[低速原抓WAV+CUE]