angularjs에서 선택 상자의 기본값을 어떻게 설정합니까?
개체를 편집하는 데 사용되는 양식이 있는데 선택 상자에서 값을 선택할 수 없습니다.
편집 할을 나타내는 json 배열이 있으며 다음과 같습니다.
$scope.item = [{
"objectID": "76",
"versionID": "0",
"versionName": "CURRENT",
"objectName": "xyz",
}]
이제 다음과 같은 다른 json 배열에서 선택 상자를 동시에 채 웁니다.
$scope.versions = [{
"id": "0",
"description": "CURRENT",
"name": "CURRENT"
},
{
"id": "114",
"description": "description of Version 2",
"name": "version2"
},
{
"id": "126",
"description": "description of Version 3",
"name": "version3"
},
{
"id": "149",
"description": "description of Version 4",
"name": "version4"
}]
내 웹 페이지 안에 다음과 같이 선택 상자를 만들고 있습니다.
Version:<select ng-model="item.versionID" ng-selected="item.versionID" ng-options="version.name for version in versions" required>
선택 상자가 채워지지만 .NET의 버전과 일치하는 값을 선택해야합니다 item
. 나는 둘 다 시도 versionID
했고 versionName
, 심지어 설정을 시도했지만 ng-selected="0"
작동하지 않습니다.
나는 여기에서 Angularjs 사이트와 googled를 보았고 수많은 자습서를 보았지만 여전히 문제가 있습니다. 문제가 무엇인지 알 수 없으므로 도움을 주셔서 감사합니다.
JSFiddle 추가
여기 에 JsFiddle 추가
다음 과 같이 ng-init를 간단하게 사용할 수 있습니다.
<select ng-init="somethingHere = options[0]" ng-model="somethingHere" ng-options="option.name for option in options"></select>
모델이 id 또는 name 속성에 바인딩되지 않았기 때문에 기본값을 설정하지 않고 각 version
개체에 바인딩됩니다 . versionID
개체 중 하나에 설정을 시도 하면 작동합니다.$scope.item.versionID = $scope.versions[2];
id 속성으로 설정하려면 다음 select as
구문 을 추가해야 합니다.
ng-options="version.id as version.name for version in versions"
추가 할 수 있습니다.
track by version.id
귀하의 ng- 옵션에.
여러 비 작동 옵션을 검색하고 시도한 후 선택한 기본 옵션이 작동하도록합니다. 나는 다음에서 깨끗한 해결책을 찾습니다. http://www.undefinednull.com/2014/08/11/a-brief-walk-through-of-the-ng-options-in-angularjs/
<select class="ajg-stereo-fader-input-name ajg-select-left" ng-options="option.name for option in selectOptions" ng-model="inputLeft"></select>
<select class="ajg-stereo-fader-input-name ajg-select-right" ng-options="option.name for option in selectOptions" ng-model="inputRight"></select>
scope.inputLeft = scope.selectOptions[0];
scope.inputRight = scope.selectOptions[1];
문서 select 에 따라 다음 코드가 저에게 효과적이었습니다.
<div ng-controller="ExampleController">
<form name="myForm">
<label for="mySelect">Make a choice:</label>
<select name="mySelect" id="mySelect"
ng-options="option.name for option in data.availableOptions track by option.id"
ng-model="data.selectedOption"></select>
</form>
<hr>
<tt>option = {{data.selectedOption}}</tt><br/>
</div>
<select ng-model="selectedCar" ><option ng-repeat="car in cars " value="{{car.model}}">{{car.model}}</option></select>
<script>var app = angular.module('myApp', []);app.controller('myCtrl', function($scope) { $scope.cars = [{model : "Ford Mustang", color : "red"}, {model : "Fiat 500", color : "white"},{model : "Volvo XC90", color : "black"}];
$scope.selectedCar=$scope.cars[0].model ;});
if you don't even want to initialize ng-model to a static value and each value is DB driven, it can be done in the following way. Angular compares the evaluated value and populates the drop down.
Here below modelData.unitId is retrieved from DB and is compared to the list of unit id which is a separate list from db-
<select id="uomList" ng-init="modelData.unitId"
ng-model="modelData.unitId" ng-options="unitOfMeasurement.id as unitOfMeasurement.unitName for unitOfMeasurement in unitOfMeasurements">
참고URL : https://stackoverflow.com/questions/18380951/how-do-i-set-default-value-of-select-box-in-angularjs
'code' 카테고리의 다른 글
java.lang.RuntimeException : com.android.builder.dexing.DexArchiveMergerException : Android Studio 3.0에서 dex를 병합 할 수 없습니다. (0) | 2020.11.26 |
---|---|
투명한 단일 픽셀 이미지의 최소 파일 크기 (0) | 2020.11.26 |
프로세스가 도커 컨테이너 내에서 실행 중인지 확인하는 방법 (0) | 2020.11.26 |
Swift에서 클래스 레벨 함수를 어떻게 선언합니까? (0) | 2020.11.26 |
툴바 이미지 중앙 (0) | 2020.11.26 |