基于angular实现三级联动的生日插件
写了一个生日联动插件具体的效果是这样的:
创新互联坚持“要么做到,要么别承诺”的工作理念,服务领域包括:网站设计、网站制作、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的爱辉网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!
具体的数据
我取得数据是今年的数据,如果是想要做三级联动的日期插件,改一下时间就好了
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: '生日'+ ''+ ''+ '', 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 month2 = Number(month); month2=parseInt(month2,10) var d= new Date(Number(year),month2,0); return d.getDate(); } scope.getDayArr=function(day){ shuju.day=[]; for(var i=0; i
html
js 传入的数据
$scope.birthday={ birthday:1993-01-20, returnValue:'', }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持创新互联。
本文标题:基于angular实现三级联动的生日插件
文章链接:http://scjbc.cn/article/pphpjd.html