# Problem mit Verlinkung JSP Dynamische Tabelle



## Melissa (6. Jan 2011)

Hallo,

hab ein Problem und komm hier einfach nicht weiter, hoffe es kann mir jemand helfen.


```
<table border="1"  width="655" rules="all" frame="box">
<tr  bgcolor=#cccccc>
<th width="10%" >Nr</th>
<th>Name</th>
</tr>

<% 
session.setAttribute("dummyData", MonitorMain.fillDummyData());

Iterator cells = MonitorMain.fillDummyData().getCellsField().iterator();

int i=0;
while (cells.hasNext())
{
	Cell cell = (Cell)cells.next();
	cell.getCellNameField();	
	i++;
	%>
	<tr>
	<td><%=i%></td>	                          
	<td>
		 
	<a href=seite.jsp><%= cell.getCellNameField()%></a></td>	
	</tr>
	<% } %>

</table>
```


tabelle sieht dann wie folgt aus:
nr.      Name
1        Server1
2        Server2
3        Server3

Ich möchte immer das anzeigen was ich zu letzt angeklickt habe...
beim klick auf Server1 möchte ich das in einem Label angezeigt wird,  also z.B.: Server1
Label befindet sich auf einer anderen jspseite, 



```
<h2>Name: <label for="name" size=90 maxlength=50></label>
</h2>
```

Wie löst man sowas? Hat jemand eine Idee?

LG


----------



## tagedieb (7. Jan 2011)

Ich hab jetzt nicht verstanden was du genau vorhast und wo dein Label genau angzeigt werden soll. 

Wenn du das Label nicht beim laden des JSP setzen kannst sondern es dynamisch aendern moechtest kannst du das mit Javascript machen.


```
<script>
    function changeLabel(name) {
        // hier frame- und id- namen anpassen, je nach struktur musst du eventuell auch parent benutzen
        window.labelframe.document.getElementById(servername).innerHTML=name;
        return false;
    }
</script>
<H3><A HREF="server1.jsp" onclick="return changeLabel('Server1');">Server1</A></H3>


// definiere noch eine ID fuer das label um den Zugriff zu erleichtern
<h2>Name: <label id="servername" for="name" size=90 maxlength=50></label>
</h2>
```


----------



## Melissa (7. Jan 2011)

Hallo 
hab das nicht richtig erklärt, was ich genau will:

ich habe zwei jsp Seiten einmal server.jsp und index.jsp

in index.jsp ist einmal die dynmische Tabelle:

```
<table border="1"  width="655" rules="all" frame="box">
<tr  bgcolor=#cccccc>
<th width="10%" >Nr</th>
<th>Name</th>
</tr>

<% 
session.setAttribute("dummyData", MonitorMain.fillDummyData());

Iterator cells = MonitorMain.fillDummyData().getCellsField().iterator();

int i=0;
while (cells.hasNext())
{
	Cell cell = (Cell)cells.next();
	cell.getCellNameField();	
	i++;
	%>
	<tr>
	<td><%=i%></td>	                          
	<td>
		 
	<a href=seite.jsp><%= cell.getCellNameField()%></a></td>	
	</tr>
	<% } %>

</table>
```
dynamische Ausgabe:
nr.    Name
1     Server1
2     Server2
3     Server3


und in server.jsp:

```
<h2>Name: <label for="name" size=90 maxlength=50></label>
</h2>
```

Jetzt möchte ich wenn ich auf server1 klicke, dass mir dynamisch das label in server.jsp angepasst wird mit 
Ausgabe: 
Name: Server1

ich hab dein code versucht einzubauen aber irgendwie geht das nicht, ich mach immer noch was falsch...

Lg


----------



## tagedieb (7. Jan 2011)

Das Javascript muss nur richtig konfiguriert werden. Wird server.jsp aus index.jsp referenziert? Kanns du mir mal zeigen wo du die frames/iframes definiert hast, dann kann ich dir auch sagen wo du was aendern must.


----------



## Melissa (7. Jan 2011)

Ja also server.jsp wird von index.jsp referenziert...

iframe befindet sich in index.jsp:

<iframe id="editorWindow" src="../../../contents/server.jsp"  style=" border: 0px; height: 400px;" frameborder="0"; scrolling="no" ; frameborder="0"; width="100%"; name="iFrame";align="right"></iframe>

Vielen Dank im Vorraus!


----------



## tagedieb (7. Jan 2011)

Mit den folgenden Aenderungen muesste es eigentlich funktionieren.


```
// index.jsp einfuegen
<script>
    function changeLabel(name) {
        window.editorWindow.document.getElementById('servername').innerHTML=name;
        return false;
    }
</script>

// index.jsp aendern:
	<a href=seite.jsp onclick="return changeLabel('<%= cell.getCellNameField()%>');"><%= cell.getCellNameField()%></a>


// server.jsp aendern:
<h2>Name: <label id="servername" for="name" size=90 maxlength=50></label>
</h2>
```

PS. dein 
	
	
	
	





```
iframe
```
 tag is auch falsch, aber sollte trotzdem funktionieren.
den 
	
	
	
	





```
;
```
 wird nur innterhalb des style attributes verwendet! Ausserdem 2mal frameborder definiert.

Richtig sollte es so aussehen:

```
<iframe id="editorWindow" src="../../../contents/server.jsp" style=" border: 0px; height: 400px;" frameborder="0" scrolling="no" width="100%" name="iFrame" align="right"></iframe>
```


----------



## Melissa (7. Jan 2011)

Danke, 
werde es so bei mir anpassen!


----------



## Melissa (8. Jan 2011)

habs hinbekommen dank dir!! DANKE Nochmal 

hab noch etwas rum gespielt und nun:

```
<LABEL id="label1" style="font-weight:bold;color:#f20"></LABEL><br>
<A HREF='#' onclick="return setText('label1','<%= cell.getCellNameField()%>');"><%= cell.getCellNameField()%></A>
```

LG :toll:


----------

