-
Fototrend
JavaScript != Java (A JavaScript nem összekeverendő a Javával, két különböző programozási nyelvről van szó!)
Új hozzászólás Aktív témák
-
faster
nagyúr
Így próbáld:
<!DOCTYPE HTML PUBLIC ''-//W3C//DTD HTML 4.01 Transitional//EN''>
<html>
<head>
<title>Tájtl</title>
<script type=''text/javascript''>
<!--
function valami() {
valtozo = ''asdas'';
document.getElementById(''myid'').onclick = function akarmi() {
alert(valtozo);
}
}
//-->
</script>
</head>
<body onload=''valami()''>
<input type=''button'' id=''myid'' value=''x''>
</body>
</html>
Egyébként bármelyik event handlert átirányíthatod egy függvényre
function myclick() {
}
..myid'').onclick = myclick;
...csak a paraméterátadással lesznek gondok.
[Szerkesztve] -
faster
nagyúr
Miért? A fenti példa nem jó erre?
onclick=''fuggvenyneve('stringparam')''
helyett
document.getElementById(''myid'').onclick = function noname() {
fuggvenyneve('stringparam');
}
..sőt, név sem kell a függvénynek
document.getElementById(''myid'').onclick = function () {
fuggvenyneve('stringparam');
} -
Fisha
őstag
Na csak sikerult megoldani a dolgot. Nem is kellett hozza eval, elegendo volt csak ertelmesen vegiggondolni a problemat. Ugyebar a
valami.onmouseover = new Function (''valamifv (valtozo)'') semmikeppen sem mukodhet, ugyanis a handler kotesnel rendelkezesre allo valtozo nem is igazan lehetne elerheto majd az esemeny bekovetkeztekor.
Szerencsere nekem nem is ez kell, csupan a kotesnel kell, hogy dinamizmus legyen a dologban. Tehat a helyes megoldas:
valami.onmouseover = new Function (''valamifv (\'''' + valtozo + ''\'')'')
Fisha