Frage

Ich habe ein Anzeigeformular und ein Listen-Webpart direkt darunter.Wenn Benutzer in diesem Listen-Webpart auf „Neues Element hinzufügen“ klicken, möchte ich, dass die Werte automatisch ausgefüllt werden.

Die URL für das Anzeigeformular enthält DispForm.aspx?ID=1, aber wenn ich NewForm.aspx öffne, möchte ich ein Feld automatisch mit dieser ID füllen.Kann ich diese ID an das NewForm oder zumindest an dessen URL übergeben, wo ich sie von dort abrufen kann?Alles, was es zu übergeben scheint, ist der Listenname, in dem sich das Anzeigeformular befindet.

War es hilfreich?

Lösung

Abhängig von Ihren Einstellungen wird die Seite „newform.aspx“ entweder in einem Dialog (Iframe) oder auf einer neuen Seite geöffnet.

So behebe ich dieses Problem in meiner SPELL-Bibliothek:Ich übergebe die ID nicht in der URL, sondern führe stattdessen ein Skript auf newform.aspx aus, das die folgenden Schritte ausführt:

  1. Wenn das neue Formular geöffnet wird, überprüfen Sie das übergeordnete Fenster
  2. Wenn das übergeordnete Element vorhanden ist (Dialog), ist die ID in window.parent.location.href enthalten
  3. Wenn die übergeordnete Seite nicht existiert (neue Seite), überprüfen Sie den window.referrer

Notiz:In der Praxis kann die Seite „newform.aspx“ von mehr als einem Anzeigeformular aus geöffnet werden.Vielleicht brauchen Sie also etwas Anspruchsvolleres, als nur weiterzumachen ID=.

Andere Tipps

Sie können den ID-Parameter aus der Abfragezeichenfolge in Dispform.aspx analysieren. Sobald Sie den ID-Wert haben, können Sie den Link „Neues Element hinzufügen“ aktualisieren und die ID aus DispForm.aspx übergeben.

Bitte beziehen Sie sich auf Abfragezeichenfolge aus Javascript analysieren um die URL zu analysieren und einen Wert aus der Abfragezeichenfolge abzurufen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit sharepoint.stackexchange
scroll top