SharePointCommunity
Die deutschsprachige Community für SharePoint, Microsoft 365, Teams, Yammer und mit Azure

Sponsored by

Willkommen im Forum Archiv.
Einträge sind hier nicht mehr möglich, aber der Bestand von 12 Jahren SharePoint-Wissen ist hier recherchierbar.




Re: SP 2013: Bearbeiten-Button in View manipulieren (Link-Target ändern)

Dieser Beitrag hat 0 Antworten

Ohne Rang
6 Beiträge
Preko erstellt 29 Nov. 2018 13:52
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

So, habe nun die Lösung gefunden. 

Damit das Ganze bei mehreren Listeneinträgen auf einer Seite funktioniert, müssen logischerweise folgende Schritte durchgeführt werden:

  1. ID-Werte der betroffenen Datensätze ermitteln,
  2. und in einem Array speichern
  3. Iterierend die Linkänderung auf der Seite durchlaufen
    - zuerst pro ID den "onclick"-Event, dann
    - erst das Link-Ziel ändern => ACHTUNG: Reihenfolge einhalten!

Nachfolgend, wie angekündigt, der Punkt 3. als Essenz des Ganzen dargestellt:

<script type="text/Javascript" language="javascript">
   function changeUrl() {
	  // Ändert das Link-Ziel, welches auch angezeigt wird, wenn der Cursor über dem Bearbeiten-Symbol ist
      $('a[href$="../sites/ersteUnterseite/_layouts/15/listform.aspx?PageType=6&ListId=%7B2A977D39%2D3304%2D4563%2D8AE3%2DFC08A5792377%7D&ID=1"]').attr("onclick", "EditItemWithCheckoutAlert(event, '../sites/landingPage/Lists/Termine/editErsteSeite.aspx?ID=1', '', '', 'undefined', '../sites/landingPage', '', '26');return false;");
	  // Ändert den "onclick"-Event auf das neue Link-Ziel mit den für SharePoint notwendigen Parametern
      $('a[href$="../sites/ersteUnterseite/_layouts/15/listform.aspx?PageType=6&ListId=%7B2A977D39%2D3304%2D4563%2D8AE3%2DFC08A5792377%7D&ID=1"]').attr("href", ../sites/landingPage/Lists/Termine/editErsteSeite.aspx?ID=1);      
    }
    _spBodyOnLoadFunctionNames.push("changeUrl");
}
</script>

Die (SharePoint-) Angaben für den "onclick"-Event habe ich mir über die "Entwickler-Tools" (F12) im Browser rauskopiert und entsprechend in die Funktion eingefügt. 

Punkt 1 und 2 müssten dann entsprechend umgesetzt werden und der o. g. Lösungsweg eingebunden werden.