Passare l'ID nell'URL per Newform.aspx?
-
10-12-2019 - |
Domanda
Ho un modulo di visualizzazione e una lista web elenco appena sotto questo.Quando gli utenti fanno clic su "Aggiungi nuovo elemento" in quell'elenco web part, vorrei che i valori siano automaticamente popolati.
L'URL per il modulo Diplay contiene DispForm.aspx?ID=1
, ma quando apro il Newform.aspx, vorrei popolare automaticamente un campo con quell'ID.Posso passare quell'ID nel Newform o almeno nel suo URL dove posso recuperarlo da lì?Tutto ciò che sembra passare è il nome dell'elenco che il modulo di visualizzazione è in.
Soluzione
A seconda delle impostazioni, la pagina NewForm.aspx si apre in una finestra di dialogo (IFRAME) o aperta in una nuova pagina.
Ecco come rivolgo questo problema nella mia libreria ortografica: non passa l'ID nell'URL, ma invece eseguo uno script su Newform.aspx che segue questi passaggi:
- .
- Quando si apre il nuovo modulo, controlla la finestra genitore
- Se il genitore esiste (finestra di dialogo), l'ID è incluso in Window.Parent.Location.href
- Se il genitore non esiste (nuova pagina), controlla la finestra.Referrer
Nota: in pratica la pagina Newform.aspx potrebbe essere aperta da più di un modulo di visualizzazione.Quindi potresti aver bisogno di qualcosa di più sofisticato di una semplice divisione su
ID=
.
Altri suggerimenti
È possibile analizzare il parametro ID dalla stringa di query in Dispform.aspx, una volta che si dispone del valore ID è possibile aggiornare il collegamento "Aggiungi nuovo elemento" e il Passaggio ID da Desform.aspx.
Si prega di fare riferimento a Parse Query String da JavaScript per Parse URL e ottenere valore daString di query.