# Syntax bei OnClick mit String Übergabe



## SG_wXistenZ (4. Januar 2005)

*Guten Morgen Spotlight,*

ich habe bei der Syntax eines OnClick mit Funktionsaufruf, der einen String übergeben soll Probleme!

Ziel des Programms:
Eine ASP Anwendung soll als iFrame einen Auswahlfiilter auf eine Datenbank aufbauen. Jede Zeile aus der Tabelle, soll dann ein Image als Button bekommen, welches mit einem OnClick eine Funktion aufruft, die dann die aktuelle Datensatznummer übergibt.

Da die Datensatznummer eine Referenznummer ist, als Zeichen & Ziffern, muss ich hier mit dem Datentyp TEXT/STRING arbeiten.

Mit einem nummerischen versuch habe ich keine Probleme, das führt aber nicht zum Ziel!

Nummerischer Aufruf:

```
this.MeineListe.Text += "<TD><IMG SRC = 'FlagHaken.bmp' OnClick='take(" + test++ + ")'></TD>";
```
Erzeugt eine Ausgabe, als test, nur kann ich mit nummerischen Werten nicht festlegen welcher Datensatz an zu sprechen ist!

gewünschter Aufruf:

```
this.MeineListe.Text += "<TD><IMG SRC = 'FlagHaken.bmp' OnClick='take('" + nummer + "')'></TD>";
```
Erzeugt einen Syntax-Fehler, den ich nicht nachvollziehen kann.

Die aufgerufene Funktion, hier einmal als Test, der nur eine Ausgabe erzeugt:

```
<script language="JavaScript">
function take(nummer)
{
alert (nummer);
}
</script>
```
 
Wahrscheinlich nur eine Kleinigkeit, die ich übersehen habe, oder?

*Liebe grüße,*
*eXi*


----------



## con-f-use (4. Januar 2005)

Ehrlich gesagt versteh ich mal wieder nicht so ganz, was du eigentlich willst, aber dass kann auch daran liegen, dass ich micht mit asp nicht auskenne. 

    Wie auch immer normalerweise ist der Syntax für das was du beschreibst

```
this.MeineListe.Text += "<TD><IMG SRC = \"FlagHaken.bmp\" OnClick=\"take(\' " + nummer + " \')\"></TD>";
```
 
 Im IE wird höchstwahrscheinlich auch das nicht wirklich funktionieren, weil du da um Zellen zu einer Tabelle hizuzufügen die Methode createCell() benutzen musst.


----------



## SG_wXistenZ (4. Januar 2005)

Nein, ein CreateCell brauche ich nicht, da ich bei ASP ähnlich wie bei PHP die JavaScript Ausgaben innerhalb eines HTML-Tags dynamisch erzeugen kann! Kokmisch ist, das es mit einer nummerischen Übergabe, zb.: Integer funktioniert, aber wenn ich mit der gleichen Syntax einen String übergeben möchte, dann nicht!


----------



## SG_wXistenZ (4. Januar 2005)

Danke, habe noch mal genau Deine Syntax übernommen und nun funktioniert es! Der Fehler kam anscheinend woanders zustande... Mercci Bien!


----------



## SG_wXistenZ (4. Januar 2005)

Wenn Du so fit mit JavaScript bhist, dann kannst mir sicherlich auch sagen ob ich iFrames verstecken kann, hidden oder visible, oder ähnlich...


----------



## con-f-use (4. Januar 2005)

Gib den Iframe ne ID und sprich ihn mit document.getElementById("ID").style.display = "none" bzw. "inline" an. Wäre so der spontane Einfall dazu.
 Wenn du willst, das an der Stelle noch ein "Platzhalter" ist, kannst du auch mit ...style.visibility = "visible" bzw. "hidden" arbeiten.


```
<html><head><title>Iframe verstecken</title>
   
   <script type="text/javascript"><!--
   
   function ohnePlatzhalter(id) {
 	if (document.getElementById(id).style.display == "none") document.getElementById(id).style.display= "inline";
   	else document.getElementById(id).style.display = "none";
   }
   
   function mitPlatzhalter(id) {
 	if (document.getElementById(id).style.visibility == "hidden") document.getElementById(id).style.visibility = "visible";
   	else document.getElementById(id).style.visibility = "hidden";
   }
   
   //--></script></head><body>
   
   <iframe id="ifra" src="bla.htm"></iframe><br />
   <input value="Mit Platzhalter" onclick="mitPlatzhalter('ifra')" type="button" />
   <input value="Ohne Platzhalter" onclick="ohnePlatzhalter('ifra')" type="button" />
   
   </body></html>
```


----------



## SG_wXistenZ (4. Januar 2005)

Danke, für die schnelle Info...


----------



## con-f-use (4. Januar 2005)

Kein Problem hab mich aber beim Beispiel ein bischen vertan, sorry.


----------

