Ich benutze Dojo 1.5 (einschließlich Dojox). Ich habe ein dojox.grid.DataGrid, wobei jede Zeile einen Benutzer darstellt. Wenn ich auf eine Zeile klicke, möchte ich auf eine URL wie/users/USER_ID umleiten. Die Benutzer-ID ist eines der Felder im Grid. Daher muss ich in meinem onRowClick-Callback nur die Benutzer-ID für die angeklickte Zeile abrufen.dojox.grid.DataGrid: Wie kann auf Daten von einem Klickereignis zugegriffen werden?
Das Click-Ereignis ein rowIndex Eigenschaft enthält, und in der Tat fand ich eine (eher alt) an anderer Stelle veröffentlichen, die vorgeschlagen, ich sollte tun können:
var row = dijit.byId('grid').model.getRow(e.rowIndex);
/* (Then grab the 0th field of the row, which is the user ID.) */
(Sorry, ich habe die seit verloren URL.)
Aber mein Gitterobjekt hat kein Modellattribut. Was ist damit? Hat sich die API geändert? (Mein Raster ist sicherlich mit Daten gefüllt, die ich sehen kann, klicken Sie auf, sortieren Sie nach Spalte, und so weiter).
So bin ich für jetzt fest. Hinweis, BTW, dass es nicht funktioniert, rowIndex zu verwenden, um direkt auf den zugrunde liegenden dojo.data.ItemFileReadStore des Rasters zuzugreifen. Das liegt daran, dass das Raster sortierbar ist. Daher gibt es keine Garantie dafür, dass die Zeilen des Rasters in derselben Reihenfolge wie die des Speichers liegen.
Alle Hinweise würden sehr geschätzt werden. Ich hoffe, dass die Frage klar und ausreichend allgemein ist, dass jede Antwort anderen in meiner misslichen Lage helfen kann. Danke vielmals.
Danke! Das hat den Trick gemacht. Zwei weitere Fragen: 1) Können Sie eine gute Quelle für High-Level-Dokumente empfehlen, um solche Aufgaben zu erledigen? Ich war frustriert in meinen Bemühungen, etwas über dem Level von Javadoc-artigen Dokumenten zu einzelnen APIs zu finden. dojocampus.org scheint das beste Ding da draußen zu sein, aber es ist etwas fleckig. 2) Wird es im Dojo als legitim angesehen, Methoden aufzurufen, die mit einem führenden Unterstrich versehen sind? Ich hatte angenommen, dass es sich um private APIs handelt. Nochmals vielen Dank, -qdw – qdw
1) Ich stimme zu, die Docs sind sehr verteilt über viele verschiedene Websites und wie Sie finde ich Dojocampus einer der besseren sein. Obwohl ich finde, dass www.sitepen.com/blog sehr inspirierend für fortgeschrittene Aufgaben sein kann, aber es sind nicht nur Dojo-verwandte Themen dort. Und www.dojotoolkit.org/api hat kürzlich eine sehr schöne Verjüngungskur bekommen. Und dann natürlich StackOverflow :) 2) Ich würde nicht sagen, dass es total legitim ist. Bei Verwendung dieser Funktionen besteht das Risiko, dass sie im Gegensatz zu den api-dokumentierten Methoden ohne Warnung aus einer Version in eine andere Version umbenannt wird. – DanneManne