In Telerik ASP.NET MVC TabStrip möchte ich, dass die Seite merkt, welche Registerkarte zuletzt ausgewählt wurde, und die Auswahl über mehrere Seitenanforderungen beibehalten. Was ich habe, ist eine Teilansicht, die auf mehreren Seiten angezeigt wird und den TabStrip enthält. Mit SelectedIndex wird die Registerkarte set immer ausgewählt, wodurch die Auswahl des Benutzers aufgehoben wird.
Ich konnte weder durch die Telerik APIs noch durch irgendeinen nützlichen Rat in ihrem Forum einen offiziellen Weg finden, dies zu tun, also entschied ich mich, meinen eigenen Weg zu gehen mit:
Dann verdrahtete ich sie wie unten in der Teilansicht, die den TabStrip enthält.
%Vor%)
Edit: Ich habe gemerkt, dass meine Antwort ein bisschen zu wenig erklärt hat, also habe ich hinzugefügt:
Falls es nicht offensichtlich ist, die OnSelect erfasst den Index des ausgewählten Objekts Registerkarte, wenn es ausgewählt und geschrieben wird das zu einem Cookie namens selectedTabIndex. Der Weg ist so eingestellt, dass es unsere gesamte Website umfasst, aber wenn du das auslässt, wird es Erstellen Sie einen neuen Cookie für jeden anderen Pfad (was Ihr Wunsch sein könnte Verhalten). Jemand vertrauter mit das jQuery-Cookie-Plugin bitte korrigiere mich, wenn ich falsch liege, ich habe es nicht oft benutzt.
Dann im OnLoad macht es das Gegenteil, im Grunde. Es findet das tabStrip, holt den Index von der Cookie, dann bekommt das domElement von die Registerkarte am Index vom Cookie und weist den TabStrip an, das auszuwählen domElement.
Das scheint in Chrome und IE ziemlich gut zu funktionieren, aber in FFox 3 kann es einige Macken geben.
Ich hoffe, das Telerik-Team erwägt, dies zu ihrer API hinzuzufügen, da es für mich ein ziemlich nützliches Feature ist, dass es eingebacken ist. Entschuldigung, wenn es schon ist, aber ich konnte es nicht in den Dokumenten finden.
Tags und Links asp.net-mvc telerik