AngularJS Select
ЁЯУМ AngularJS Select рдХреНрдпрд╛ рд╣реИ?
AngularJS рдореЗрдВ <select>
element рдХреЛ dynamic рдФрд░ interactive рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдо ng-model
рдФрд░ ng-options
directives рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред
рдЖрд╕рд╛рди рднрд╛рд╖рд╛ рдореЗрдВ: AngularJS рдХреА рдорджрдж рд╕реЗ рдЖрдк рдРрд╕рд╛ drop-down рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ data рдХреЗ рд╕рд╛рде auto-update, bind, рдФрд░ control рд╣реЛ рд╕рдХреЗред
тЬЕ AngularJS рдореЗрдВ Select рдХреЛ Control рдХрд░рдиреЗ рдХреЗ 2 рддрд░реАрдХреЗ:
рддрд░реАрдХрд╛ | Description |
---|---|
ng-model | Select box рдореЗрдВ рдЬреЛ рдЪреБрдирд╛ рдЧрдпрд╛ рд╣реИ, рд╡реЛ рдХрд┐рд╕ variable рдореЗрдВ store рд╣реЛ |
ng-options | Select рдХреЗ рдЕрдВрджрд░ рдХреМрди-рдХреМрди рд╕реЗ options рджрд┐рдЦреЗрдВ |
тЬНя╕П Basic Syntax:
<select ng-model="selectedItem" ng-options="item for item in itemList"></select>
ng-model
тЖТ рдЬреЛ рдЪреБрдирд╛ рдЧрдпрд╛, рд╡реЛ value рдЗрд╕рдореЗрдВ рдЬрд╛рдПрдЧрд╛ng-options
тЖТ Drop-down рдХреЗ рд▓рд┐рдП options generate рдХрд░рддрд╛ рд╣реИ
тЬЕ Example 1: Simple Select Box
<div ng-app="myApp" ng-controller="myCtrl">
<select ng-model="selectedCity" ng-options="city for city in cities"></select>
<p>You selected: {{ selectedCity }}</p>
</div>
<script>
var app = angular.module("myApp", []);
app.controller("myCtrl", function($scope) {
$scope.cities = ["Delhi", "Mumbai", "Kolkata", "Chennai"];
});
</script>
Output: рдПрдХ dynamic drop-down list рдЬрд┐рд╕рдореЗрдВ рдЖрдк рдХрд┐рд╕реА рднреА city рдХреЛ рдЪреБрди рд╕рдХрддреЗ рд╣реИрдВред
тЬЕ Example 2: Object-Based Select Box
<select ng-model="selectedStudent" ng-options="student.name for student in students"></select>
<p>You selected: {{ selectedStudent.name }} (Age: {{ selectedStudent.age }})</p>
$scope.students = [
{ name: "Amit", age: 22 },
{ name: "Priya", age: 24 },
{ name: "Ravi", age: 21 }
];
Drop-down рдореЗрдВ name рджрд┐рдЦреЗрдЧрд╛, рдФрд░ select рдХрд░рддреЗ рд╣реА рдЙрд╕рдХреЗ рдкреВрд░реЗ object рдХреА detail рдиреАрдЪреЗ рджрд┐рдЦреЗрдЧреАред
тЬЕ Example 3: Default Value Set рдХрд░рдирд╛
$scope.selectedCity = $scope.cities[0];
рдЗрд╕рдХрд╛ рдорддрд▓рдм рдкрд╣рд▓реЗ рд╕реЗ рдХреЛрдИ value selected рд░рд╣реЗрдЧреА рдЬрдм рдкреЗрдЬ load рд╣реЛрдЧрд╛ред
тЬЕ Example 4: track by
(Unique Value Binding)
<select ng-model="selected" ng-options="item.name for item in items track by item.id"></select>
рдЗрд╕рд╕реЗ AngularJS рдХреЛ рд╣рд░ option рдХреА unique рдкрд╣рдЪрд╛рди (ID) рдорд┐рд▓рддреА рд╣реИред Performance рдФрд░ comparison fast рд╣реЛрддрд╛ рд╣реИред
тЬЕ Example 5: Add Option Manually (ng-repeat alternative)
<select ng-model="fruit">
<option ng-repeat="f in fruits" value="{{f}}">{{f}}</option>
</select>
Note: рдпреЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рд▓реЗрдХрд┐рди
ng-options
рдЬрд╝реНрдпрд╛рджрд╛ efficient рдФрд░ clean рд╣реИред
тЪая╕П Common Mistakes Avoid рдХрд░реЗрдВ
тЭМ рд╕рд┐рд░реНрдл <option>
рдХрд╛ value
рджреЗрдирд╛ рдФрд░ ng-model
рдирд╛ bind рдХрд░рдирд╛
тЭМ ng-options
рдореЗрдВ object рдХреА рдЬрдЧрд╣ string рджреЗрдирд╛
тЬЕ Always use ng-model
рдФрд░ ng-options
рд╕рд╛рде рдореЗрдВ
ЁЯза рдЕрднреНрдпрд╛рд╕ рдкреНрд░рд╢реНрди (Exercise)
- AngularJS рдореЗрдВ
ng-options
рдХрд╛ рдХреНрдпрд╛ рдХрд╛рдо рд╣реИ? - рдЕрдЧрд░ рдЖрдк select рдореЗрдВ object show рдХрд░ рд░рд╣реЗ рд╣реИрдВ рддреЛ value рдХреИрд╕реЗ bind рд╣реЛрдЧреА?
ng-model
рдФрд░ng-options
рдХреЗ рдмрд┐рдирд╛ select рдХреИрд╕реЗ behave рдХрд░реЗрдЧрд╛?
тЬЕ рдЖрдкрдиреЗ рдХреНрдпрд╛ рд╕реАрдЦрд╛?
- AngularJS рдореЗрдВ
<select>
рдХреЛ dynamic рдХреИрд╕реЗ рдмрдирд╛рддреЗ рд╣реИрдВ ng-model
рд╕реЗ selected value рдХреЛ рдХреИрд╕реЗ bind рдХрд░рддреЗ рд╣реИрдВng-options
рд╕реЗ options рдХреЛ auto-generate рдХрд░рдирд╛- Object-based dropdown рдФрд░ default values
ЁЯОп рдЕрдм рдЖрдк рдЕрдкрдиреЗ AngularJS App рдореЗрдВ fully dynamic рдФрд░ smart dropdowns рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ!