Personalizzazione del NewForm.aspx della Lista SharePoint 2007?
-
16-10-2019 - |
Domanda
ho un elenco di SharePoint 2007 e ha 6 colonne del sito, vogliono avere due modalità di pagina NewForm.aspx. Quando utente clicca newItem, dovrebbe visualizzare solo 3 colonne del sito e non ci dovrebbero un collegamento alla modalità avanzata, quando utente clicca sul link modalità avanzata dovrebbe mostrare tutte le 6 colonne del sito e corrispondenti valori di colonna deve essere pre-popolati se l'utente già entra alcune informazioni nel modo semplice. E l'utente dovrebbe essere in grado di andare in modalità semplice dal modalità avanzata.
voglio anche visualizzare il nome dell'utente corrente in etichetta è nella pagina NewForm.aspx
Come può essere raggiunto? Dowe necessità di scrivere una sorta di javascript?
Soluzione
Si potrebbe fare questo abbastanza facilmente usando SPUtility.js (Full Disclosure questa è una libreria io sostengo). Si sarebbe probabilmente messo tutto dentro un Content Editor Web Part sulla NewForm.aspx.
Si dovrebbe avere il tuo link "modalità avanzata" che avrebbe ginocchiera mostrare / nascondere i campi. Esempio utilizzando SPUtility.js:
SPUtility.GetSPField('Field A').Hide(); // or Show() after they click the link
SPUtility.GetSPField('Field B').Hide();
SPUtility.GetSPField('Field C').Hide();
Fammi sapere se si sceglie di seguire questa strada e mi può aiutare con il resto.
Altri suggerimenti
JavaScript sembra il modo di andare come si desidera aggiungere un po 'di comportamento dinamico alla pagina, ma a quanto pare non c'è bisogno di ulteriori informazioni dal server.
Il codice dovrà:
- identificare le 3 righe che hanno bisogno di essere nascosto
- li rendono invisibili (display: none o visibility: hidden)
- commutare la visibilità al clic
JavaScript dovrebbe anche permettere di recuperare il nome dell'utente corrente (sia nome visualizzato o meglio account utente).
Un altro modo per farlo sarebbe quello di utilizzare l'EditForm per fungere da 'forma avanzata' (supponendo che si desidera che tutti i 6 campi di essere visibili quando un utente sta modificando la voce di elenco). Poi, un semplice reindirizzamento quando l'utente fa clic su 'OK' vi porterà alla modifica / forma avanzata con i valori immessi conservato.
Per il reindirizzamento, la domanda ovvia è: come faccio a reindirizzare modulo di modifica di un elemento senza ID della voce? (L'ID non viene creato fino a quando la voce di elenco viene salvato). Prova SPServices Biblioteca di Marc D Anderson - http://spservices.codeplex.com/ . Marc ha scritto una funzione specificamente affrontare questo problema -..> $ () SPServices.SPRedirectWithID
È anche possibile utilizzare SPServices di Marc biblioteca per visualizzare il nome degli utenti corrente (e altri) utilizzando il $ (). Utility SPServices.SPGetCurrentUser.