Sto cercando di creare un'associazione personalizzata in knockout per usarla come campo di selezione multipla. Ad esempio: Desidero progettare la schermata di selezione per il report delle fatture. In questa schermata di selezione vorrei utilizzare il campo "Tipo di fattura" per consentire agli utenti di fornire solo i tipi di fatture, a cui sono interessati. Se utilizzo una casella di testo standard per questo campo, gli utenti possono solo fornire un tipo di fattura . Voglio che siano in grado di fornire più di un tipo nella selezione. La mia idea era quella di preparare un legame come ad esempio:Associazione personalizzata per selezione multipla in knockout js
// html
<input data-bind="multiple: { data: optionsArray }" />
...
// view model
optionsArray = ko.observableArray();
dove ho potuto fornire campo 'optionsArray', tale da ostacolare la scelta multipla di utenti (nel mio caso che sarebbe più tipi di fattura). Se si tratta di interfaccia utente, ho pensato che potesse assomigliare a questo: c'è un pulsante accanto all'elemento con più rilegature. Dopo aver fatto clic su di esso, viene visualizzata la finestra di dialogo e tutti gli elementi 'optionsArray' sono visualizzati lì e possono essere modificati, nuovi possono essere aggiunti o cancellati.
Non so come ottenere ciò perché non sono riuscito a visualizzare tutti gli elementi OptionsArray nella finestra di dialogo in modo che possano essere modificati come osservabili e tutte le modifiche si riflettano in viewModel.optionsArray. È possibile?
Avete esperienza nella creazione di associazioni personalizzate e aiutatemi con questo?
Questo è buono, ma selec L'elemento t non è così stylable e il più importante mi piacerebbe modificare ogni elemento sul posto. – Eori
@Eori Cosa? L'elemento select è un elemento HTML nativo: può essere stilizzato dai CSS allo stesso livello di ogni altro elemento HTML. – Tyrsius
La multi-selezione nativa è piuttosto orribile, ma lo styling ti porta solo lontano. Molte app hanno un elenco di elementi che possono essere aggiunti a un'area di testo. A volte ciò avviene con una multi-selezione nascosta per passare le selezioni al server. Questo è il tipo di cosa a cui dovrebbe eccellere knockout. –