Hallo dames heren,
kep maar een klein probleempje
Ik ga met tabbladen werken, waarbij ik deze JavaScript code heb:
Deze code werkt volledig. Gewoon copy-paste en runnen maar, kun je zelf testen.
Nu zie je helemaal onderaan bij de AddTab() methode dat er 2 strings staan: de eerste is het kopje van de tab, de tweede de inhoud. Nu wil ik in die 2e string als inhoud simpelweg een complete tabel zetten.
Zoiets dus:
Jullie zien dat ik een form in de tabel pleur. Dit lukt ook wel, geen probleem. Maar zodra ik daar een struts-form van maak (HTML:FORM), krijg ik van Internet explorer zelf een fout.
Dan zegt ie dat ie een ' ) ' verwacht direct na de b in het woordje TABLE.
Misschien is dit een fout van JavaScript en de custom strutstags.....
Weet iemand hoe ik dit kan oplossen?
kep maar een klein probleempje
Ik ga met tabbladen werken, waarbij ik deze JavaScript code heb:
Java:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
| <html> <head> <style> body { font-family : arial, helvetica; } .Tab { border-bottom : 2px solid #000000; border-left : 2px solid #777777; border-right : 2px solid #000000; border-top : 2px solid #777777; background-color : #000000; cursor : default; color : #ffffff; text-align : center; } .Selected { border-left : 2px solid #777777; border-right : 2px solid #000000; border-top : 2px solid #777777; background-color : #cc0000; cursor : default; color : #ffffff; text-align : center; font-weight : bold; } #Tabbottom { border-bottom : 2px solid #000000; border-left : 2px solid #777777; border-right : 1px solid #000000; line-height : 5px; background-color : #ffcc00; } </style> </head> <body> <script type="text/javascript"> var CurTab = null; // ************************************** // TabContainer + Tabbladen Objecten // ************************************** function TabContainer() { this.width = "500"; this.tabs = []; } TabContainer.prototype.Build = function() { var s = ""; var w = (this.width/5); //Dus max 5 tabs... if (this.tabs) { s+= "<table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" OnSelectStart=\"return false;\" width=\"" + this.width + "\"><tr>"; for (i=0; i<this.tabs.length; i++) { s+= "<td class=\"Tab\" id=\"tab" + i + "\" width=\"" + w + "\" onclick=\"SelectTab(tab" + i + ");\">" + this.tabs[i].Label + "</td>"; } s+= "<td id =\"EmptyCell\"> </td>"; s+= "</tr><tr><td id=\"Tabbottom\" colspan=\"" + (this.tabs.length+1) + "\"> </td>"; s+= "</tr><td colspan=\"" + (this.tabs.length+1) + "\"><div id=\"inhoud\"></div></td>"; s+= "</tr></table>"; } /*alert(s);*/ document.write(s); } TabContainer.prototype.AddTab = function() { this.tabs[this.tabs.length] = new Tab(arguments[0],arguments[1]); } function Tab() { this.Label = arguments[0]; this.Content = arguments[1]; } // ************************************** // General functions // ************************************** function SelectTab(TheTab) { if (CurTab) { var oldTab = CurTab; CurTab = null; HighLightTab(('tab' + oldTab),false); CurTab = oldTab; } if ( ('tab' + CurTab) != TheTab.id) { CurTab = TheTab.id.substring(3,TheTab.id.length); HighLightTab(('tab' + CurTab),true); //Hier moet schrijven inhoud komen!!!! document.all['inhoud'].innerHTML = MyTabs.tabs[CurTab].Content; } } function HighLightTab( tabID, selected ) { getObj(tabID).className = selected ? "Selected" : "Tab"; } function getObj(id){ if(document.getElementById) return document.getElementById(id); else if(document.all) return document.all[id]; else if(document.layers) return findObj(id,document); } function findObj(id,d){ for(var i=0;i<d.layers.length;i++){ var obj=d.layers[i]; if(obj.name==id) return obj; if(obj.document.layers.length>0){ obj=findObj(id,obj.document); if(obj!=null) return obj; } } return null; } // ************************************** // Create the TabContainer // ************************************** MyTabs = new TabContainer(); with(MyTabs) { AddTab("Metagegevens","Metagegevens van een document"); AddTab("Zoekresultaat","De resultaten van de zoekactie"); AddTab("Document","Hier wordt het document weergegeven"); AddTab("Zoekcriteria","De criteria waarop de gebruiker heeft gezocht"); AddTab("Wijzigen metagegevens","Wijzigen van de metagegevens van een document"); Build(); } </script> </body> </html> |
Deze code werkt volledig. Gewoon copy-paste en runnen maar, kun je zelf testen.
Nu zie je helemaal onderaan bij de AddTab() methode dat er 2 strings staan: de eerste is het kopje van de tab, de tweede de inhoud. Nu wil ik in die 2e string als inhoud simpelweg een complete tabel zetten.
Zoiets dus:
code:
1
| AddTab("Metagegevens","<table><form action='SomeAction">Metagegevens van een document'</form></table>"); |
Jullie zien dat ik een form in de tabel pleur. Dit lukt ook wel, geen probleem. Maar zodra ik daar een struts-form van maak (HTML:FORM), krijg ik van Internet explorer zelf een fout.
Dan zegt ie dat ie een ' ) ' verwacht direct na de b in het woordje TABLE.
Misschien is dit een fout van JavaScript en de custom strutstags.....
Weet iemand hoe ik dit kan oplossen?
[ Voor 22% gewijzigd door Deathchant op 23-08-2004 12:56 ]
Canon: EOS R6 | EF 16-35/4L IS USM | EF 70-200/2.8L IS II USM
Zeiss: 35/2 Distagon | 50/2 Makro-Planar | 85/1.4 Planar | 100/2 Makro-Planar | 135/2 Apo Sonnar