Javascript ng模型值未通过ng repeat传递
我试图有自定义过滤器来过滤日期范围,保留了文本字段,以便在popver中从用户处获取日期。它不工作,而我有另一个文本框在标题栏中获取名称,并能够在默认过滤器的Javascript ng模型值未通过ng repeat传递,javascript,angularjs,ionic-framework,angularjs-filter,Javascript,Angularjs,Ionic Framework,Angularjs Filter,我试图有自定义过滤器来过滤日期范围,保留了文本字段,以便在popver中从用户处获取日期。它不工作,而我有另一个文本框在标题栏中获取名称,并能够在默认过滤器的ng repeat中获取值 我错过了什么 Popver中的日期字段 它不在任何控制器下,而是在popver中 <label class=" item-input"> <span class="input-label" style="width:50%;font-size:14px;">From Date&
ng repeat
中获取值
我错过了什么
Popver中的日期字段
它不在任何控制器下,而是在popver中
<label class=" item-input">
<span class="input-label" style="width:50%;font-size:14px;">From Date</span>
<input type="text" ng-model="fromDate"/>
</label>
从日期开始
HTML-ng repeat
<div ng-repeat="item in Items | filter: custname | filter: applyDateFilter(fromDate, toDate)">
<div class="row item wrap">
<div class="col col-95">
<ion-checkbox ng-model="item.Selected">
<div class="row">
<div class="col col-67">
<p>{{item.name}}</p>
</div>
<div class="col col-33 right">
<p>{{item.order_date | datetimeFormat }}</p>
</div>
</div>
</ion-checkbox>
</div>
</div>
</div>
{{item.name}
{{item.order_date|datetimeFormat}
过滤器
.controller("dbController", function($scope, $rootScope) {
$scope.applyDateFilter = function(from, to) {
return function(items, from, to) {
console.log(items);
console.log('from '+from);
console.log('to '+to);
console.log('fromDate '+$scope.fromDate);
console.log('toDate '+toDate);
var result = [];
if(from == 0 && to == 0)
return items;
if(from != '' && to != ''){
var df = parseDate(from);
var dt = parseDate(to);
for (var i=0; i<items.length; i++){
var tf = new Date(items[i].order_date * 1000);
if (tf >= df && tf <= dt) {
result.push(items[i]);
}
}
}
return result;
};
};
});
.controller(“dbController”,函数($scope,$rootScope){
$scope.applyDateFilter=函数(从,到){
返回函数(项目、从、到){
控制台日志(项目);
console.log('from'+from);
console.log('to'+to');
log('fromDate'+$scope.fromDate);
console.log('toDate'+toDate);
var结果=[];
if(from==0&&to==0)
退货项目;
如果(从!=''&&到!=''){
var df=解析日期(从);
var dt=解析日期(至);
对于(var i=0;i=df&&tf,popover可能正在创建一个不同的作用域,因此您的ng模型
正在注册到一个不同的作用域
请尝试以下解决方案:
创建一个全局控制器,并将其应用于
或
,然后在其中放入类似的内容(
):
现在,更改您的视图:
<label class=" item-input">
<span class="input-label">From Date</span>
<input type="text" ng-model="globalModels.fromDate"/>
</label>
从日期开始
现在,当将其传递到filter inng repeat
时,传递globalModels.fromDate
,而不仅仅是fromDate
。对toDate执行相同操作,popover可能正在创建不同的作用域,因此您的ng模型
将被注册到不同的作用域
请尝试以下解决方案:
创建一个全局控制器,并将其应用于
或
,然后在其中放入类似的内容(
):
现在,更改您的视图:
<label class=" item-input">
<span class="input-label">From Date</span>
<input type="text" ng-model="globalModels.fromDate"/>
</label>
从日期开始
现在,当将其传递到过滤器中时,ng repeat
,传递globalModels.fromDate
,而不仅仅是fromDate
。对toDate执行同样的操作。提供一个小提琴来检查您的流。您是如何打开popover的?是否使用ui引导?提供一个小提琴来检查您的流。您是如何打开popover的?Ar你在使用ui引导吗?很抱歉回复太晚,我正在使用ionic。我尝试了$rootScope和$scope,但仍然得到相同的结果。将fromDate设置为未定义,将toDate设置为“”。尝试更改名称也不起作用。还尝试将元素直接移动到标头而不是popover,运气不佳。很抱歉回复太晚,我正在使用ionic。我尝试$rootScope和$scope中都有d,但仍然相同。将fromDate获取为未定义,将toDate获取为“”。尝试更改名称也无效。还尝试将元素直接移动到标头而不是popover,没有成功。
<label class=" item-input">
<span class="input-label">From Date</span>
<input type="text" ng-model="globalModels.fromDate"/>
</label>