Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 带有值的AngularJS错误上的日期选择器_Javascript_Angularjs - Fatal编程技术网

Javascript 带有值的AngularJS错误上的日期选择器

Javascript 带有值的AngularJS错误上的日期选择器,javascript,angularjs,Javascript,Angularjs,我在这里尝试做的事情是,当用户在单击上一个箭头时选择StartDate和EndDate时,他应该在每次之前7天获取数据,以便查看进度 JavaScript: HTML: 我们不是都喜欢javascript的约会吗 var start = angular.copy(startDate) start.setDate(start.getDate() + computeDiff); var date1 = start.getDate(); var month1 = start.getMonth() +

我在这里尝试做的事情是,当用户在单击上一个箭头时选择StartDate和EndDate时,他应该在每次之前7天获取数据,以便查看进度

JavaScript:

HTML:


我们不是都喜欢javascript的约会吗

var start = angular.copy(startDate)
start.setDate(start.getDate() + computeDiff);
var date1 = start.getDate();
var month1 = start.getMonth() + 1; // i hate em for this one -.-
var year1 = start.getFullYear();
在start.setDatestart.getDate+computeDiff行中;我们使用日期的实习生计算来获得正确的日期

编辑: 如果可以添加其他库,请查看


我明白了:写起来很难,应该很难理解。。。什么不起作用;您是否有任何错误?如果日期为2014年4月1日,则您必须将日期1放入当月天数模块中,否则您将获取负天数。对于getMonth返回,您需要使用if进行一个方法,在这四种情况下,30天、31天、29天或28天扫描,您可以给我一个简单的示例,因为我对angular worldUse moment.js不熟悉。首先非常感谢,你帮了我的忙。第二,你能不能给我一些好的建议,告诉我如何更好地重构这段代码,因为有很多代码重复。很高兴我能帮忙=没有外部库,我不知道。javascripts日期真是令人沮丧。如果可以添加其他库,请将moment.js添加到项目中。它也可以在浏览器和服务器脚本中工作,例如node.js,有一些很好的功能,比如fromNow“42分钟前回答”。。。还有更多;
   <label>From</label>
   <input type="text" datepicker-popup="dd-MM-yyyy"  ng-model="startDate"/>
   <label>To</label>
   <input type="text" datepicker-popup="dd-MM-yyyy" ng-model="endDate"/>
   <button class="btn btn-success" ng-click="getDiffPrev(startDate, endDate, computeDiff)">&larr;</button>                                                                                             
var start = angular.copy(startDate)
start.setDate(start.getDate() + computeDiff);
var date1 = start.getDate();
var month1 = start.getMonth() + 1; // i hate em for this one -.-
var year1 = start.getFullYear();
moment().subtract('days', 7).format('yourFormatStringHere')