2012-02-01 4 views
8

Sto cercando un pattern UI generale riutilizzabile che possa essere utilizzato per modificare il contenuto degli elenchi a discesa nella mia app MVC3. Cioè, alcune delle coppie Id-Name utilizzate per popolare i menu a discesa per le viste di modifica esistono solo per questo scopo e non hanno impostazioni di visualizzazione del controller dedicate. Per esempio. Industria e settore per i moduli del corso. Ogni elenco è solo una struttura Id-Name, ma Sector ha anche un valore IndustryId.Esiste uno schema che posso utilizzare per modificare gli elenchi a discesa in un'applicazione MVC3?

Ora non desidero davvero utilizzare le visualizzazioni standard di scaffold per questi, ovvero creare, modificare ed elencare con collegamenti, ma non posso fare a meno di chiedermi come migliorarli al meglio. Dovrei associare ogni elenco a un editor che esegue solo il rendering di una casella di testo EditorFor per ciascun elemento nell'elenco, con jQuery per aggiungere un nuovo elemento o eliminare un elemento? c'è qualche modo stabilito per farlo?

NOTA: Non si tratta di caricare un elenco a discesa. Si tratta di caricare i valori di un elenco a discesa in una vista per modificarli, per controllare ciò che appare nell'elenco a discesa quando viene caricato con qualsiasi mezzo.

+0

dai un'occhiata a AjaxDropdown da http://awesome.codeplex.com scrivi il codice per popolarlo solo una volta in un controller che viene utilizzato solo per esso, e dopo puoi dichiararlo qualsiasi vista desideri senza avere per passare i dati ad esso dal controller di quella vista – Omu

+0

Vedere il mio blog blog Cascading DropDownList in ASP.Net MVC (http://blogs.msdn.com/b/rickandy/archive/2012/01/09/cascasding-dropdownlist- in-asp-net-mvc.aspx) e Utilizzo della casella DropDownList e jQuery (http://www.asp.net/mvc/tutorials/javascript/working-with-the-dropdownlist-box-and-jquery/using -the-dropdownlist-helper-with-aspnet-mvc) – RickAndMSFT

+0

Questo potrebbe non essere esattamente quello che stai cercando, ma quello che ho fatto in passato è popolare un [jQueryUI autocomplete] (http://jqueryui.com/ demos/autocomplete /) casella con i valori distinti per una colonna nel database, ma consentire la a Completo di accettare nuovi valori. In questo modo, in realtà non è necessario mantenere un elenco di valori potenziali al di fuori di quelli effettivi in ​​uso. Non so che ci sia una sorta di "pattern accettato" per questo, probabilmente è meglio girare quello che ha più senso per il flusso di lavoro dell'utente. –

risposta

1

Non so se c'è un modello di per sé, ma abbiamo a che fare con questo genere di cose così (decine di tabelle di ricerca con il stessa struttura) e usiamo pagine semplici con un jqGrid. La modifica è attiva nel senso che la modifica di una riga provoca una chiamata Ajax al controller per modificare il valore di ricerca stesso. Funziona abbastanza bene. Abbiamo finito per avere una vista dedicata per ciascuna delle tabelle di ricerca modificabili (non tutte sono), ma sarebbe stato abbastanza semplice usare la stessa vista, controller e script lato client per tutti loro.

+0

Sì, penso che usare semplicemente una griglia sarà probabilmente la migliore, anche se guarderò la griglia [Kendo UI] (http://www.kendoui.com/web.aspx) prima di jqGrid. – ProfK

0

È possibile utilizzare jQuery e jQuery UI per personalizzare i vostri elenchi a discesa

Problemi correlati