Domanda

Sto usando ASP.NET MVC 3 e che cerca probabilmente usando dynatree.

dynatree con ASP.NET MVC

Ho esaminato il post sopra e come @matt Penner renda la sua vista sull'albero e nella mia OPION sembra più pulita della risposta accettata.

Una domanda che ho però è come pubblicare le opzioni selezionate al server? Quando viene reso, sembra che tutti siano tag proiettili che vengono convertiti per sembrare che i folli.

Quindi mi chiedo come posso serializzare i dati? In questo momento ho una forma e quando l'utente colpisce l'invio, faccio un jquery serialiquarry e invialo tramite Ajax al server dove viene vincolata al modello di visualizzazione.

Come lo farei per le scelte selezionate nella vista ad albero?

Io non sono anche chiaro su come potrei rendere la vista ad albero con i nodi predefiniti controllati in base all'esempio ha opaco Penner.

Grazie

È stato utile?

Soluzione

Il modo in cui Matt Penner rendering the Tree è più semplice e più pulito ... ma dal momento che ha non ha costruito "modelli" che rappresenta i dati dell'albero, non è facile usare il suo approccio per leggere l'albero. L'albero deve essere letto in un "modello" e poiché è un albero che tale modello deve essere ricorsivo come quello mostrato nel primo esempio.

Tuttavia, se si forniscono nomi adeguati alle caselle di controllo è possibile leggerli. In realtà il binding binding on Put viene eseguito utilizzando una convenzione del nome, quindi ad esempio una casella di controllo denominata:

Bambini [2] .children [0] .mycheckbox

verrà letto nel: Terzo figlioli Primo livello=> Primo Chidren Secondo livello Modello del modello Erorchico Devi costruire per ricevere i dati pubblicati.

Tuttavia questo approccio funziona bene, se l'utente non modifica la struttura dell'albero, perché in tal caso la casella di controllo denominata bambini [2] .children [0] .MycheckBox può venire in un posto diverso da questo nome Suggerisce, questo è non sarebbe altro il 3 ° livello dei bambini del bambino, e potrebbe diventare, ad esempio il quinto primo livello del bambino ... ma il suo nome non cambia.

Dall'altro lato se si seriano i dati sul client e quindi inviali in JSON al sever, sarai in grado di tenere conto anche delle modifiche dell'albero.

Detto darà un'occhiata a TreeView del toolkit di controllo MVC (Io sono Il coordinatore del progetto) ... Fa già tutti i lavori per te, e puoi usare un modello generico per ogni nodo, cioè è possibile mettere Everuthing ti piace in ogni nodo:

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top