نافذة اختيار AngularJS
- الصفحة السابقة جدول AngularJS
- الصفحة التالية SQL AngularJS
يسمح AngularJS بإنشاء قائمة منسدلة بناءً على العناصر في المجموعة أو العنصر في المجموعة.
إنشاء نافذة اختيار باستخدام ng-options
إذا كنت ترغب في إنشاء قائمة منسدلة في AngularJS بناءً على العنصر أو المجموعة، يجب عليك استخدام ng-options
تعليمات:
مثال
<div ng-app="myApp" ng-controller="myCtrl"> <select ng-model="selectedName" ng-options="x for x in names"> </select> </div> <script> var app = angular.module('myApp', []); app.controller('myCtrl', function($scope) { $scope.names = ["Emil", "Tobias", "Linus"]; ); </script>
ng-options مع ng-repeat
يمكنك أيضًا استخدام ng-repeat
تعليمات لإنشاء نفس القائمة المنسدلة:
مثال
<select> <option ng-repeat="x in names">{{x}}</option> </select>
بسبب ng-repeat
تعليمة تكرر نفس كود HTML لكل عنصر في المجموعة، لذا يمكن استخدامها لإنشاء خيارات في القائمة المنسدلة، ولكن ng-options
تعليمات مصممة خصيصًا لتعبئة خيارات القائمة المنسدلة.
ما يجب استخدامها؟
يمكنك استخدام ng-repeat
تعليمات و ng-options
تعليمات:
افترض أن لديك مصفوفة كائنات:
$scope.cars = [ {model : "Ford Mustang", color : "red"}, {model : "Fiat 500", color : "white"}, {model : "Volvo XC90", color : "black"} ];
مثال
استخدام ng-repeat
:
<select ng-model="selectedCar"> <option ng-repeat="x in cars" value="{{x.model}}">{{x.model}}</option> </select> <h1>لقد اخترت: {{selectedCar}}</h1>
عندما تستخدم القيمة ككائن، استخدم ng-value
ب value
:
مثال
استبدال ng-repeat
استخدام ك كائن:
<select ng-model="selectedCar"> <option ng-repeat="x in cars" ng-value="{{x}}">{{x.model}}</option> </select> <h1>لقد اخترت {{selectedCar.color}} {{selectedCar.model}}</h1>
مثال
استخدام ng-options
:
<select ng-model="selectedCar" ng-options="x.model for x in cars"> </select> <h1>لقد اخترت: {{selectedCar.model}}</h1> <p>لونها هو: {{selectedCar.color}}</p>
عندما يكون القيمة المحددة كائنًا، يمكن أن يحتوي على معلومات إضافية، مما يجعل تطبيقك أكثر مرونة.
سنستخدمها في هذا الدليل. ng-options
تعليمات.
ك مصدر البيانات للكائن
في المثال السابق، كان مصدر البيانات هو مصفوفة، لكن يمكننا أيضًا استخدام الكائن.
افترض أن لديك كائن يحتوي على المفتاح القيمة:
$scope.cars = { car01 : "Ford", car02 : "Fiat", car03 : "Volvo" };
ng-options
تعبر العبارات داخل الخاصية عن الكائن بشكل مختلف قليلًا:
مثال
استخدام الكائن ك مصدر البيانات،x
تمثل المفتاح،y
تمثل القيمة:
<select ng-model="selectedCar" ng-options="x for (x, y) in cars"> </select> <h1>لقد اخترت: {{selectedCar}}</h1>
القيمة المحددة ستكون دائمًا داخل المفتاح القيمةقيمة.
المفتاح القيمة فيقيمةيمكن أن يكون أيضًا كائنًا:
مثال
القيمة المحددة ستظل تكون داخل المفتاح القيمةقيمة، ولكن هذه المرة هو هدف:
$scope.cars = { car01 : {brand : "Ford", model : "Mustang", color : "red"}, car02 : {brand : "Fiat", model : "500", color : "white"}, car03 : {brand : "Volvo", model : "XC90", color : "black"} };
لا يجب أن تكون الخيارات في القائمة المنسدلة جزءًا من مفتاح القيمةالمفتاح، يمكن أن يكون أيضًا قيمة أو خاصية قيمة لقيمة:
مثال
<select ng-model="selectedCar" ng-options="y.brand for (x, y) in cars"> </select>
- الصفحة السابقة جدول AngularJS
- الصفحة التالية SQL AngularJS