Müssen wählen Sie eine Standard-Angular JS-Radio-Taste
Ich bin neu in Angular JS und ich bin versucht, erstellen Sie eine Reihe von radio-buttons. Erstellen der buttons war der einfache Teil, aber ich habe Probleme, herauszufinden, wie man Standard wählen Sie eine von Ihnen, ohne zu brechen alles. Ich habe gelesen, über die Verwendung ngChecked in den Winkel-docs und auf mehreren anderen stackoverflow-Fragen, aber noch kann nicht ganz scheinen, um es herauszufinden.
Was ich tun müssen, ist eine der Beschreibungen vorausgewählt, wenn der Benutzer kommt auf die Seite. Der Preis -, Rabatt -, und deal_value auch gezeigt werden müssen mit den Werten aus der vorgewählten price_option Objekt.
Hier ist der code, den ich versuche zu bekommen, um zu arbeiten: http://jsfiddle.net/qWzTb/311/
HTML-Code:
<body ng-app="demoApp">
<div ng-controller="DemoController" ng-init="init([{qty: 1, price:10, qty_description:'descrip 1', discount:'1%', deal_value:200}, {qty: 2, price:7, qty_description:'descrip 2', discount:'5%', deal_value:100}])">
<div>
<label ng-repeat="price_option in price_options">
<input type="radio" ng-model="init.price_option" ng-value="price_option" ng-checked="selected_price_option" name="quantity"/>
{{ price_option.qty_description }}
</label>
<ul>
<li>{{ init.price_option.price }}</li>
<li>{{ init.price_option.discount }}</li>
<li>{{ init.price_option.deal_value }}</li>
</ul>
</div>
</div>
</body>
Javascript:
angular.module('demoApp', []).controller('DemoController', function($scope) {
$scope.init = function(prices) {
$scope.price_options = prices;
$scope.selected_price_option = $scope.price_options[0];
};
});
InformationsquelleAutor rocket scientist | 2014-04-03
Du musst angemeldet sein, um einen Kommentar abzugeben.
HTML
JS
Gabel Geige: http://jsfiddle.net/W8KH7/2/
Oder verwenden Sie den Objekt-Strategie, zu vermeiden, dass die Referenz $parent: http://jsfiddle.net/W8KH7/3/
Sie können nur code ausführen, der dann im ng-init wie würden Sie in der controller-excpet Sie weglassen
$scope
.ng-init="price_options=[{qty: 1,price: 10,qty_description: 'descrip 1',discount: '1%',deal_value: 200}, {qty: 2,price: 7,qty_description: 'descrip 2',discount: '5%',deal_value: 100}];selected_price_option = price_options[1]"
.Diese Version zeigt die gleichen Funktionen wie revision 3 verwendet, außer ng-init: jsfiddle.net/W8KH7/4
Puh, endlich es funktioniert! Vielen Dank für alle Hilfe!
InformationsquelleAutor km6zla
Allgemeinen Vorschlag, vermeiden Sie die Verwendung von '{{}}' verwenden, ng-bind (Diese wird nicht im Zusammenhang in Frage zu stellen, nur seine gute Praxis )
Verwenden
Wenn Sie Steuern möchten, aus controller.js dann nutzen Sie
und Steuern controller.js
InformationsquelleAutor onsy
Versuchen Sie diesen Ansatz:
HTML
Demo: http://jsfiddle.net/qWzTb/313/
InformationsquelleAutor dfsq