Ich habe drei Eingabefelder Feld „Trade“wie AngularJS Ergebnis durch getrimmtes ng-Modell filtert
<input type="text" placeholder="Date YYYY" ng-model="search.DateYear">
<input type="text" placeholder="Date MM" ng-model="search.DateMonth">
<input type="text" placeholder="Date DD" ng-model="search.DateDay">
Die Daten von SQL Server filtern abgerufen werden, und das Datum ist wie dies
{ "dayOfMonth": 9, "dayOfWeek": "MONTAG", "dayOfYear": 130, "Monat": "MAY", "monthValue": 5, "Jahr": 2016, "Stunde": 12, "Minute" : 38, "nano": 0, "zweite": 57, "chronology": {"id": "ISO", "calendarType": "iso8601"}
so, wenn ich mit ng-repeat
filtern wollen, wird es sein wie:
<tr ng-repeat="trade in trades|filter:tradeDate.year:search.DateYear,
tradeDate.monthValue:search.DateMonth,tradeDate.dayOfMonth:search.DateDay">
<td>{{trade.blahhblahhField}}</td>
<td>{{trade.blahhblahhField}}</td>
<td>{{trade.tradeDate}}</td>
</tr>
Aber jetzt habe ich es zu einem Eingabefeld (ng-model:search.tradeDate
) ändern möchten, die das Format „YYYY-MM-DD“ hat. Wie filtere ich das?
habe ich versucht, diese Art von Ansatz:
ng-repeat="trade in trades|filter:tradeDate.year:trimYear(search.tradeDate),
tradeDate.monthValue:trimMonth(search.tradeDate),tradeDate.dayOfMonth:trimDay(search.tradeDate)"
so etwas wie diese und 3 Funktionen in js erstellen zu trimmen (ex: 2016.05.20)
Jahr: 2016 Teilzeichen
zu erhalten$scope.trimYear = function(input){
var res = input.substring(0,4);
return res;
};
Monat: Teilzeichenfolge bekommen 5 (nicht 05 seit Monatswert von Daten 5 sein)
Tag: Substring um 20 zu bekommen
Aber das würde nicht funktionieren; Ich gehe davon aus, dass beim ersten Laden keine Eingabe erfolgt. Ich bin noch neu in diesem Bereich. Gibt es einen anderen Weg?
Ich möchte nur eine inputBox, die Eingabe in YYYY-MM-DD filtern kann. Ich verstehe nicht wirklich, wie ich das durch deinen Code machen kann, und was genau ist Eingabe und Suche im Funktionsparameter? Vielen Dank. – mdmlll
Ich habe die Antwort aktualisiert, um zu zeigen, wie Sie das mit einer einzigen Eingabe angehen können, und um zu erklären, woher die Parameter für die Filterfunktion kommen. – Lex
Danke so mcuh für die Hilfe !! es funktionierte! – mdmlll