发表于: 2017-04-21 20:38:56
2 1194
今日完成
基本完成任务八
明日计划
开启任务九
问题:
今天主要是调试与修改代码,比如将过滤接收数据的方法改为使用angular的自定义过滤器等等(之前用的是很简单的if eles)。遇到的都是各种零碎的小问题。
1.使用了ng-modle 与ng-option后下拉菜单默认出现了一行空白选项。一直以为是ng-option的问题,调试了很久,才发现是ng-modle的原因。
我的代码:
<input type="text" ng-model="start_time" id="start_date">
由于$scope.start_time默认值为空,所以下拉菜单的值的默认值被它强行增加了一个空值。修改了这个值后,问题解决。
2.filter过滤器会把字符转为数字,很奇怪。
.filter('type', function() {//过滤器
return function (type){
if (type == "0") {
type = "首页banner"
。。。。。。
}
当type="0"时,能够满足并执行这个if语句,但是 type= 0 时,依然会执行这个循环语句。我在浏览器打了断点,使用typeof确定数据类型。确认得到的是number 0 ,但依然执行了这个语句。
最后,我加了一层引号,把条件改为: if (type == '"0"' ),终于识别它的判断条件为字符串了,很扯。
收获:
1.学习了如何使用以及自定义angular的过滤器;
2.如何使用jq的时间控件,以及js时间格式的互相转换。其中,jq时间控件是可以通过参数进行调整的。参数有很多,感觉以下三个最常用:
altField : String : ''
将选择的日期同步到另一个域中,配合altFormat可以显示不同格式的日期字符串。
初始:$('.selector').datepicker({ altField: '#actualDate' });
获取:var altField = $('.selector').datepicker('option', 'altField');
设置:$('.selector').datepicker('option', 'altField', '#actualDate');
altFormat : String : ''
当设置了altField的情况下,显示在另一个域中的日期格式。
初始:$('.selector').datepicker({ altFormat: 'yy-mm-dd' });
获取:var altFormat = $('.selector').datepicker('option', 'altFormat');
设置:$('.selector').datepicker('option', 'altFormat', 'yy-mm-dd');
appendText : String : ''
在日期插件的所属域后面添加指定的字符串。
初始:$('.selector').datepicker({ appendText: '(yyyy-mm-dd)' });
获取:var appendText = $('.selector').datepicker('option', 'appendText');
设置:$('.selector').datepicker('option', 'appendText', '(yyyy-mm-dd)');
评论