• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

Variable ausführen, nicht "vorlesen" ?

Dyonisus

New member
Das folgende Dokument sollte eigendlich bei "onklick"
den Browser vorlesen. Die zerstückelung des entsprechenden Befehls ist es, die mich interessiert.
Leider versteht das Script die variablen nur als Text, wie kann ich es dazu bringen, sie zusammen zu setzten und auszuführen?

<html>
<head>
<script language="JavaScript">
function Getstats()
{
var nav;
var AccId;
var iName;
nav = "navigator."
AccId = "app"
iName = "Name"

document.iAccInput.test.value = nav + AccId + iName ;

}
</script>

</head>
<body bgcolor="#000000">
<form name="iAccInput">
<input onclick="Getstats()" type="button" value=" show " height="40" width="50">
<input name="test" value="">
</form>
</body>
</html>
 
Moin moin Dyonisus,

sorry, aber ich bin mir grad nicht ganz sicher, was Du möchtest. Welche Zerstückelung interessiert Dich? Und welche Variable versteht er nur als Text bzw willst Du "ausführen" ?
Ciaoi

Marko
 
Nähere Erklärung

Hi Mirko,
Es geht um folgendes:
Mein provider hat aus bestimmten Gründen den Befehl "document.referrer" gesperrt. Und zwar wird diesem Befehl, wenn man ihn in einem Script hochläd ein weiteres "r" angehängt und deswegen funktioniert er nicht. Da ich ihn aber gerne weiter benutzen würde, habe ich mir überlegt, diesen Befehl zu "zerstückeln", indem ich eine
Variable z.B. "document.re" nenne und eine weitere "ferrer". Dadurch hoffe ich zu erreichen, daß der Befehl nicht erkannt wird und wenn ich die Variablen dann zusammensetze (var1 + var2) wieder "document.referrer" erhalte. Das geht ja auch problemlos, nur leider funktioniert er dann nicht mehr als Befehl, sondern wird als Text angegeben. Wenn man z.B. einem Formular das hier hinzufügt,

<input type="hidden" name="buttonname" value="">

und dann noch das Script:

<script language="JavaScript">
document.formularname.buttonname.value = document.referrer;
</script>

bekommt man mit dem Formular ja normalerweise noch die Information mitgeschickt, von wo der Ausfüllende zu dem Formular gekommen ist (letzte URL in der History).

Da das "document.referrer" bei meinem Provider ja zu "document.referrerr" wird, wollte ich das Script so schreiben:

<script language="JavaScript">
{
var var1 ;
var var2;
var1 = "document.re"
var2 = "ferrer"
}
document.formularname.buttonname.value = var1 + var2;
</script>

Dann bekomme ich aber als "value" fur den Button nicht die letzte URL, sondern "document.referrer" als Text.
Nun ist also die Frage, wie ich das Script dazu bringe, die zusammen gefügten Variablen nicht als Text anzusehen, sondern das zu tun, was sie bedeuten.
Ich hoffe, ich hab es diesmal besser erklärt, jedenfalls vielen Dank für Dein Interesse ;-)
 
oh oh oh ... <smile>

moin moin Dyonisus,

ist schon putzig was man aus einem Namen machen kann, da heiß ich mal Marco und mal Mirko, bin gespannt, wann der erste meinen Namen richtig schreibt <smile>.
Aber zum Problem, das Ding ist gut, das hab ich noch gar nicht gehört, das ein Provider ein File scannt und dann bei bestimmten Befehlen einen Buchstaben dranhängt, aber sei's drum. Ich habe es nicht ausprobiert aber versuche mal folgenden kleinen Umweg über "document.write ();"

var a = "document.re"
var b = "ferrer"
var c = "document.formularname.buttonname.value = " + a + b;
document.write ("<script language='JavaScript'>");
document.write (c);
document.write ("</script>");

Sinn des ganzen ist, die Befehle über Java-Script zu schreiben so das man einzelne Befehle so zusammensetzen kann, wie man möchte, wie gesagt ist unprobiert aus der Hüfte, aber ich drück Dir die Daumen, dat it klappt. <knuff>
Bis baldigst

MARKO !!! <lächel>
 
Noch 'ne andere Idee

Versucht's doch mal mit dem (ganz simplen) Script:

var a = "document.re"
var b = "ferrer"
eval(a + b)


(Hab's nicht getestet, müsste aber klappen...)

MfG
Fabian
 
Zurück
Oben