Wie erstellt man eine dynamische Statusanzeige mit Stufen und ersteigbare input mit angularjs?
Ich versuche mich zu entwickeln, einen progressiven bar für Fundraising-Aktivitäten. Der minimale Wert ist der Wert für die Aktivität stattfinden soll und der maximale Wert ist der max-Fonds übernehmen kann. Es wird das beste sein, wenn sich die Farbe der Fortschrittsanzeige rot werden, bevor es erreicht die minimum-Markierung und es verwandelt sich in grün danach.
Dies ist, was ich im Sinn habe für die Fortschritt-bar
http://www.icondeposit.com/local--files/imageid:268/UI-Progress-Bars.jpg
Dies ist, was ich bislang erreicht haben
https://www.dropbox.com/s/q4nn64bdu8cuzch/progress%20bar.tiff
Hier ist der code aus meiner html -
<div ng-controller="ProgressDemoCtrl">
<h3>Dynamic </h3>
<progressbar max="max" value="dynamic"><span style="color:black; white-space:nowrap;">{{dynamic}} / \
{{max}}</span></progressbar>
<!--scalable input -->
<div class="col-lg-6">
<div class="input-group">
<input type="text" class="form-control" id="crd_volume">
<span class="input-group-btn">
<button class="btn btn-default" type="button" ng-click="update()">Confirm the volume</button>
</span>
</div><!-- /input-group -->
</div><!-- /.col-lg-6 -->
</div>
Und hier ist mein code für controller:
var ProgressDemoCtrl = function ($scope) {
$scope.max = 200;
$scope.min = 100;
var value=0;
var max_volume=$scope.max
var volume=1;
$scope.update=function(){
volume=document.getElementById("crd_volume").value;
alert(volume);
if (((value+parseFloat(volume))<max_volume)||((value+parseFloat(volume))==max_volume))
{
value =parseFloat(value)+parseFloat(volume);
}
$scope.dynamic = value;
$scope.type = type;
}
Schließlich habe ich versucht meinen code in plunker. Aber es funktioniert nicht hier, obwohl ich habe ein ng-app und ng-controller.
Wirklich zu schätzen jede Hilfe. Danke!
- Hier ist der link zu der plunker: plnkr.co/Bearbeiten/dhBvWBIXDzZdnGBxPOSQ?p=Album Vorhören
- Ihre plunk nicht funktioniert, hat mehrere Gründe aber der wichtigste ist, dass Sie nicht auch Eckig in den ersten Platz. Für zukünftige Referenz mit Plunker Sie können wählen Sie eine eckige Projekt von der neuen button-dropdown, und es gehören einige grundlegende Kessel-Platte für Sie. Ich bin auch vorausgesetzt, Sie verwenden die
angular-ui
Fortschrittsbalken Richtlinie, ich formuliere eine Antwort weiter unten auf dieser Annahme.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Mit der Annahme, Sie sind mit der
ui.bootstrap.progressbar
Richtlinie erstellen, können Sie eine Fortschritt-bar mit 2 bar-Richtlinien. Zu erreichen Ihrer Tätigkeit Wert und ein anderes für den Rest der Fortschritt, dieses erlaubt Sie, um Stil Sie separat.Können Sie sehen, eine Arbeit plunk hier aber das basic HTML ist:
Dann im controller die Werte (und der Typ, wenn es dynamisch ist). Wir werden das aufrufen einer Funktion über die
ng-click
Richtlinie gemäß Ihrer Beispiel wie folgt:Beachten Sie, dass ich gebrauchte Geräte hier einfach zu konvertieren, die Lautstärke in einem Prozentsatz (der max Wert der progress bar ist 100, in deinem Beispiel ist es 200, damit jeder Prozentpunkt, wäre 2 Einheiten).
Sorry das ich dir nicht hier eine Antwort nur diesen link, ich baute Ihr unter anderem, und das ist eine Skizze von dem, was Sie vielleicht wollen. im Grunde hatte Sie die Idee einfach nicht auf dom-Controller-Dinge zu tun, wie
in der Steuerung. abgesehen davon, dass Gewinne Trennung von Belangen wird es versuchen, parce den dom-Baum
die Suche für das element, das ist ein unnötiger overhead. verwenden Sie scope Variablen inseta mit ng-Modell verbindlich, wie dies
egal, hier ist das komplette Beispiel, einige details, die angegangen werden müssen, da ich nicht weiß, alle die Logik, die Sie wollen t setzen. aber dies sollte genug, um Sie auf dem richtigen Weg.
http://plnkr.co/edit/Nch1UYO6Et6HNfXm0Qhd?p=preview