2009-05-04 9 views
1

Ich habe die folgende Seite mit Dojo 1.3.1 Javascript-ToolkitDojo (x) Widgets in HTML-Tabelle werden nicht verändert

Content Pane 
    HTML table two columns, N rows 
    Column 1 (left): text 
    Column 2 (right) Dojo widget (can be any, but mostly Grids, pullodwn, etc) 

Problem:
Wenn Seite geladen wird, ist es ok macht (das Widget-Typ und die Anzahl pro Seite wird zur Laufzeit bestimmt, so kann ich dies mit statischer CSS)

nicht verwalten Wenn ich Zeilen in das Netz hinzuzufügen, während es in der Tabelle Zelle eingebettet ist

<td> grid </td> 

Die angegebene Zeile (wo das Raster eingebettet ist) wird proportional größer und alles unter dem Raster verschwindet und es gibt keine Bildlaufleisten im Inhaltsbereich , um zu den Zeilen darunter zu gelangen.

Ich weiß nicht, wie man es löst, ich habe 100% oder automatische Höhe und Breite auf alles auf der Seite festgelegt. Das hilft nicht.

Ich frage mich, ob meine Design-Ansatz falsch ist und es nicht lösbar ist. Ich habe über Leute gelesen, die sagen, Tabellen für das Layout nicht zu verwenden, aber Ich weiß zur Entwurfszeit nicht die Reihenfolge und die Art der Kontrollen, die ich anzeigen werde. Wie sonst kann das gemacht werden?

denke ich das Problem, dass, wenn ein Gitter ist in einer Tabellenzelle, und das Gitter ausdehnt, die Zelle erweitert, aber der Halt Inhaltsbereich ist nicht bekannt, es so Grenzen nicht bekommen, neu gezeichnet.

Antwort

0

Sie könnten CSS für das Layout verwenden - was können Tabellen und CSS nicht? Oder Sie können versuchen, ein anderes Dojo-Raster anstelle dieser HTML-Tabelle zu verwenden, je nachdem, wonach Sie suchen.

+0

Das glaube ich nicht, dass ich anstelle von HTML-Tabelle ein Dojo Grid verwenden können. ich den Tisch streng "Text", um das Layout bin mit -> Dojo Widget "text" -> Dojo-Widget ... und so weiter Ich weiß, Text, den Widget-Typ, und die Reihenfolge des Widgets nur zur Laufzeit (keine Entwurfszeit). Ich konnte nicht herausfinden, wie man möglicherweise CSS benutzt, um unbekannte Kontrollen nacheinander zu positionieren. Ich glaube auch nicht, dass es ein anderes Dojo-Widget gibt, das anstelle der HTML-Tabelle verwendet werden kann. Ich dachte daran, Dojox.layout.TableGrid zu verwenden, aber alle Beispiele, die ich damit sehe, haben keine Zeilen, sondern nur Spalten –

0

Dijits Widgets funktionieren so gut wie möglich wie normale Knoten. Aber viele Widgets, insbesondere diejenigen, die den Benutzer definieren lassen, welche Größe Dinge sind (wie Sie mit Spaltenbreiten im Raster können) müssen spezifische Dimensionen kennen.

Die gute Nachricht ist, dass mit den meisten dieser Widgets, eine Instanz des Widgets bekommen, und rufen widget.resize();

Verwandte Themen