Aurelia에서 종속 드롭 다운을 만들고 싶습니다.Aurelia의 종속/계단식 드롭 다운
종속 드롭 다운의 의미는 첫 번째 드롭 다운에서 항목을 클릭하면 두 번째 드롭 다운의 옵션이 클릭 한 내용에 따라 필터링됩니다. 내 js-fiddle을 보면, 첫 번째 드롭 다운에서 Toyota를 선택하면 두 번째 모델이 Toyota 자동차 모델 (Corolla, Camry 등)로 채워진다는 것을 알 수 있습니다. 첫 번째 드롭 다운에서 Honda를 선택하면 두 번째 모델은 Honda 모델 (Accord, Civic 등)로 채워집니다. 당신은 아이디어를 얻습니다.
매우 간단하며 Angular에서이 작업을 수행하는 데 필요한 코드가 거의 필요하지 않으며 Aurelia에서이 작업을 수행하는 것이 간단하고 직접적인지 궁금합니다. 나는 아우렐 리아 (Aurelia)에서이 일을하는 방법에 관한 자료를 많이 찾을 수 없었습니다. 아래의 바이올린은 정확히 무엇을하고 싶은지를 보여줍니다 (물론 Angular가 아니라 Aurelia에서 해보고 싶습니다). 어떤 도움이라도 대단히 감사 할 것입니다. 감사!
https://jsfiddle.net/nhunt3/wjvvjwzx/
HTML :
<div ng-app="myApp" ng-controller="myController">
My Cars
<br />
<table>
<thead>
<tr>
<td>Make</td>
<td>Model</td>
</tr>
</thead>
<tbody>
<tr ng-repeat="car in myCars track by car.uid">
<td>
<select ng-model="car.MakeUID" ng-options="make.uid as make.name for make in makes" />
</td>
<td>
<select
ng-model="car.ModelUID"
ng-options="model.uid as model.name for model in models | filter: { parentID: car.MakeUID } : true" />
</td>
</tr>
</tbody>
</table>
</div>
자바 스크립트 :이 스레드를 찾을 다른 사용자의
// the main (app) module
var myApp = angular.module("myApp", []);
angular.module('myApp', []).controller('myController', function($scope) {
$scope.makes = [
{name:'Toyota', uid:1},
{name:'Honda', uid:2},
{name:'Ford', uid:3}
];
$scope.models = [
{name:'Yaris', uid:1, parentID:1},
{name:'Corolla', uid:2, parentID:1},
{name:'Camry', uid:3, parentID:1},
{name:'Highlander', uid:4, parentID:1},
{name:'Accord', uid:5, parentID:2},
{name:'Civic', uid:6, parentID:2},
{name:'Pilot', uid:7, parentID:2},
{name:'Focus', uid:8, parentID:3},
{name:'Fiesta', uid:9, parentID:3},
{name:'Fusion', uid:10, parentID:3},
{name:'F-150', uid:10, parentID:3}
];
$scope.myCars = [
{uid:1, MakeUID:1, ModelUID:2},
{uid:2, MakeUID:1, ModelUID:3},
{uid:3, MakeUID:3, ModelUID:8}
];
});
감사합니다. 이것은 굉장합니다! 내게는 네가 가지고 있지 않은 몇 가지 사소한 기능이 있지만, 나는 그들을 알아낼 수있을 것이라고 확신한다. (1) 광산에서 make를 선택하면 모델은 첫 번째 모델 대신 공백을 선택합니다. (2) 내 페이지가로드되면 Toyota Corolla, Toyota Camry 및 Ford Focus 인 myCars가 표시됩니다. 당신은 도요타 야리스를 줄곧 보여줍니다. 그러나 나는 그것이 사소한 것이라고 말한 것처럼 당신은 거의 그것을 가지고있다. 엄청 고마워! 더 좋은 대답이 있는지보기 위해 며칠을 드리겠습니다. 그러면 당신의 것을 받아 들일 것입니다. –
나는 당신의 대답을 upvote하려고했지만 그것이 나의 명성이 더 높아질 때까지 나는 upvote 할 수 없다고 말한다. –
지금 상향 투표 및 수락을 시도하십시오. –