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.




Teile des Tabellenkopfes optisch verschieben

Geprüfte Antwort Dieser Beitrag hat 3 Antworten

Ohne Rang
611 Beiträge
Florian Adler erstellt 1 Aug. 2014 07:28
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Ein Kollege hat was ganz ausgeflipptes vor. Er möchte eine Listview auf einer Wikipage haben und diese filtern. Bis hier hin ja nichts schlimmes. Allerdings möchte er, sofern denn möglich, die bereits vorhandenen Spalten dazu irgendwie verwenden, ohne dass diese in der eigentlichen View auftauchen und ohne dass die entsprechenden Inhalte dieser Spalten auftauchen.

Ich muss auch dazu sagen: Es ist eine vergleichsweise beschnittene Version vom SharePoint Server 2010. Obendrein wird uns kein Zugang zum SPD gewährt, was die Geschichte nicht einfacher macht.

Kann man da etwas mit JavaScript oder CSS machen? Ich habe schon einmal im Code geschaut und gesehen, dass die ListView nichts weiter als eine normale HTML-Tabelle ist. Wie würde ich die einzelnen Table-Header ansprechen, damit ich genau die Spaltenköpfe auf der Seite "verschoben" bekomme, die ich möchte?

Alle Antworten

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 3 Aug. 2014 12:23
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

So ganz habe ich nicht kapiert, was Dein Kollege da vorhat, aber grundsätzlich kann man mit JavaScript die gesamte Ansicht verbiegen. Wenn es sehr viele Abweichungen zur normalen Standardansicht werden, kann das aber für den Browser in Arbeit. Außerdem muß die Ansicht ja erst geladen werden, bevor sie vom Script verändert wird und es kann sein, daß die Benutzer das dann sehen (zuerst die Standardansicht und dann die angepaßte Variante).

Ich würde dazu jQuery empfeheln. Das macht das Selektieren der einzelnen Bestandteile etwas einfacher. Tabellenkopfzellen haben praktisch immer die CSS-Klasse ms-vh2 und Tabelleninhaltszellen ms-vb2 und können damit abgegriffen werden.

Viele Grüße
Andi
af @ evocom de
Blog
Ohne Rang
611 Beiträge
Florian Adler Als Antwort am 4 Aug. 2014 09:00
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Dann werden wir uns das wohl abschminken können. Hier beim Kunden müssen wir mit eher leistungsschwachen und softwareseitig veralteten Geräten rechnen.

Hättest du sonst noch einen Tipp, wie man die Filterfunktion der ListView (optisch) außerhalb eben jener verwenden kann? Es geht hierbei vor allem um die Weiternutzung von Tagging-Spalten. Eventuell gibt es auch ein Szenario mit der Parameterübergabe per URL. Das müssten wir aber erst konstruieren. Am meisten sind uns die Hände dadurch gebunden, dass wir weder Zugriff auf die Vorlagenbibliotheken haben, noch den Designer verwenden dürfen.

Ich bin wieder (sporadisch) hier!

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 4 Aug. 2014 09:30
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Das klingt nach einem ganz schön eingeschränkten Szenario :-(

Das Problem bei der Filterung ist, daß sämtliche anderen JavaScript-Lösungen sich nur auf die jeweils angezeigten Elemente beziehen. Das heißt, wenn man nur 30 Elemente in der Ansicht hat obwohl in der Liste viele Hundert sind, dann kann sich eine JavaScript-Lösung nur auf diese 30 beziehen. Die Filter, die über die Standard-Spaltenköpfe gehen, berücksichtigen dagegen wirklich alle Elemente der Ansicht. Man kann also nur diese Standa5rdfunktion verwenden oder man muß etwas komplett eigenes realisieren.

[quote user="Florian Adler"]Eventuell gibt es auch ein Szenario mit der Parameterübergabe per URL[/quote]

Wenn Dir das witerhilft. Setze mal in einer Standardansicht einen Filter über den Spaltenkopf und schaue Dir dann die URL im Browser an. Dort steht dann etwas wie filterfield1=Title&filtervalue1=GesuchterTitel. Genau das kannst Du auch in eigenen Links verwenden.

Viele Grüße
Andi
af @ evocom de
Blog