Auf meiner Angular-Vorlage gibt es eine Reihe von Dropdown-Cascade (Land, Staat, Stadt), eine Schaltfläche Hinzufügen und eine Tabelle mit Löschen-Taste in jeder Zeile. Alle Daten in den Dropdown-Listen werden zum Zeitpunkt des Ladevorgangs ungefiltert von asp.net webapi abgerufen. Ich versuche, den Fluss mit Filter zu tun:wie man dynamisch Optionen aus/in Dropdown mit angularjs entfernt
- Wenn alle Dropdown-Werte ausgewählt sind, klicken Sie auf die Schaltfläche Hinzufügen, der Wert wird einer Tabelle darunter hinzugefügt. Der Wert ist ausgeblendet (nicht gelöscht).
- Wenn Sie auf die Schaltfläche Löschen in der entsprechenden Tabellenzeile klicken, wird die Zeile gelöscht (nicht ausgeblendet). Wenn sich die gelöschte Stadt noch im Dropdown befindet, wird sie nicht verborgen.
- Während der Ladezeit muss das Dropdown-Feld Stadt auch den Wert aus der Tabelle herausfiltern.
- wird Jeder Knopf klicken Ajax Post an die WebAPI die Server-Datenbank zu aktualisieren
Die Tabellendaten ist ein Array von Objekten mit 7 Feldern (id, countryid, Land, StateID, Staat, cityId, Stadt) wie unten.
[{
id: 1,
level1id: 101,
level1: 'USA',
level2id: 39,
level2: 'California',
level3id: 4210,
level3: 'San Diego'
}, {
id: 19,
level1id: 101,
level1: 'USA',
level2id: 33,
level2: 'Oregon',
level3id: 5905,
level3: 'Portland'
}, {
id: 1,
level1id: 101,
level1: 'USA',
level2id: 690,
level2: 'Washington',
level3id: 1223,
level3: 'Seattle'
}]
Nach dem Filter Seattle, Portland aufbringt und San Diego wird aus dem Drop-Down entfernt werden.
[{
id: 3521,
city: 'San Francisco'
}, {
id: 5234,
city: 'Los Angeles'
}, {
id: 9792,
city: 'New York'
}, {
id: 8899,
city: 'Chicago'
}]
Geben Sie Ihren vollständigen Arbeitscode zu besseren Ergebnissen. –