[Javascript] Variabele troubles...

Pagina: 1
Acties:

  • Skef
  • Registratie: April 2001
  • Laatst online: 14-09 11:31

Skef

Ik scheer.me

Topicstarter
Ik heb dit:

dit staat bovenaan:
code:
1
  var lastFocus="";

dit zit binnen de button:
code:
1
  onclick=\"document.$formname.lastFocus.focus();"

en binnen elke input-type text/textarea zit:
code:
1
  onfocus=\"lastFocus='$field_name'\"

Nu gaat het dus met dat document.$formname.lastFocus.focus() niet goed...

Hij pakt de lastFocus niet als JS-variabele... Hoe los ikke dit op? (Het zit in het daadwerkelijke script trouwens allemaal netjes verpakt in een mooi PHP-jasje)

"Computer games don’t affect kids: I mean if Pac-Man affected us as kids, we’d all be running around in darkened rooms, munching magic pills and listening to repetitive electronic music."


  • Annie
  • Registratie: Juni 1999
  • Laatst online: 25-11-2021

Annie

amateur megalomaan

Vergeet niet dat lastFocus maar een simpele string is, m.a.w. een stelletje niets-betekenende chars op een rijtje.

Als je de focus wil geven aan een element dan moet je in javascript het bijbehorende object erbij pakken. En dat kan bijvoorbeeld zo:
code:
1
onclick=\"eval('document.$formname.'+lastFocus+'.focus()');"

Of je kan de elements collectie van het form gebruiken, effe uit m'n hoofd:
code:
1
onclick=\"document.$formname.elements[lastFocus].focus();"

Today's subliminal thought is:


  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

met
code:
1
onclick=\"document.$formname.lastFocus.focus();"
kom je er niet, want je refereert aan een element met de naam "lastFocus" maar niet aan een element met de naam gelijk aan de inhoud van de variabele lastFocus.

Zo gaat het wel goed:
code:
1
onclick=\"document.$formname.elements [ lastFocus ].focus();"

hth

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

Annie: Wil je ook bij mij niet voordringen, net als bij oh,when? :P

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


  • Skef
  • Registratie: April 2001
  • Laatst online: 14-09 11:31

Skef

Ik scheer.me

Topicstarter
Ik heb net ff beide mogelijkheden geprobeerd, en bij beide krijg ik de melding: "blablabla is geen object"...

terwijl het weldegelijk een object is...

vaag...

iemand nog suggesties?

"Computer games don’t affect kids: I mean if Pac-Man affected us as kids, we’d all be running around in darkened rooms, munching magic pills and listening to repetitive electronic music."


  • Annie
  • Registratie: Juni 1999
  • Laatst online: 25-11-2021

Annie

amateur megalomaan

drm: i'm sowwy :o ;)

Today's subliminal thought is:


  • Annie
  • Registratie: Juni 1999
  • Laatst online: 25-11-2021

Annie

amateur megalomaan

Op maandag 19 november 2001 13:00 schreef Skef het volgende:
Ik heb net ff beide mogelijkheden geprobeerd, en bij beide krijg ik de melding: "blablabla is geen object"...

terwijl het weldegelijk een object is...

vaag...

iemand nog suggesties?
- heb je gelet op hoofd/kleine letters?
- doe 's een alert met de waarde van lastFocus of $formnaam (zijn deze wel gevuld met de juiste waarde??)

Today's subliminal thought is:


  • Skef
  • Registratie: April 2001
  • Laatst online: 14-09 11:31

Skef

Ik scheer.me

Topicstarter
Deze zijn allebei gevuld met de juiste waarden...

Als ik op een textarea klik, en vervolgens op de button, krijg ik vrolijk een foutmeldingkje...

Moet ik de [-tekens niet escapen binnen PHP?

"Computer games don’t affect kids: I mean if Pac-Man affected us as kids, we’d all be running around in darkened rooms, munching magic pills and listening to repetitive electronic music."


  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

Als je nou eens een wat volledigere scope post van je code, dan kunnen we eens een beter kijkje nemen :)

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


  • Skef
  • Registratie: April 2001
  • Laatst online: 14-09 11:31

Skef

Ik scheer.me

Topicstarter
Komt ie:

(wordt aangeroepen met index.php?table=news )
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<HTML>
<HEAD>       
  <link rel='stylesheet' href='dbm.css'>
  <script language="JavaScript">
  var lastFocus="";
  </script> 
</HEAD>

<BODY bgcolor=#C0C0C0 ONLOAD="kill_loading(); ">
<form name="$table" method=post action=index.php?table=<?php echo"$table";?>>

echo "<button style=\"height: 28px; width: 28px;\"  onmouseover=\"this.style.cursor='hand'\" onclick=\"document.$table.elements[lastFocus].focus(); document.execCommand('Paste');\">[img]\"paste.gif\"[/img]</button>\n";

echo "<textarea name='content' onfocus=\"lastFocus='content'\" class='text' style=\"width=400px; height=200px\">".$$field_name."</textarea>\n";

</form>
</BODY>
</HTML>

ik heb wel wat weggelaten....

"Computer games don’t affect kids: I mean if Pac-Man affected us as kids, we’d all be running around in darkened rooms, munching magic pills and listening to repetitive electronic music."


  • Pelle
  • Registratie: Januari 2001
  • Laatst online: 16:41

Pelle

🚴‍♂️

* Pelle vraagt zich af waarom jij je form $table noemt

Het zou heel goed kunnen dat JS zegt: ja sorry, maar ik houd niet van dollartekens dus ik herken het form gewoon niet.

  • Skef
  • Registratie: April 2001
  • Laatst online: 14-09 11:31

Skef

Ik scheer.me

Topicstarter
da's php...

Pelle: thnx... errug stomme fout dus he....

de form-name was binnen gewone html met een php-variabele...

en dat doet ie dus niet...

probleem opgelost! mensen, thanx

"Computer games don’t affect kids: I mean if Pac-Man affected us as kids, we’d all be running around in darkened rooms, munching magic pills and listening to repetitive electronic music."


  • Pelle
  • Registratie: Januari 2001
  • Laatst online: 16:41

Pelle

🚴‍♂️

Op maandag 19 november 2001 13:44 schreef Skef het volgende:
da's php...
/me *

Dan moet je me dit even uitleggen:
code:
1
<form name="$table" method=post action=index.php?table=<?php echo"$table";?>>

Als je dit zou doen, dan zou ik het snappen:
PHP:
1
2
3
<?
print "<form name=\"$table\" method=post action=index.php?table=$table>";
?>

En dit zou ik ook snappen:
code:
1
<form name="<? print $table; ?>" method=post action=index.php?table=<? print $table; ?>>

De combinatie die je gebruikt is niet helemaal paletti. De eerste keer vervangt hij $table echt niet door de waarde die je aan die variabele hebt meegegeven hoor.. hij staat niet tussen php-delimiters en dus parsed php 't ook niet en ziet het als gewone tekst.

/edit
zie Vulpes-vulpes' post

  • Vulpes_Vulpes
  • Registratie: Februari 2001
  • Laatst online: 01-02-2022

Vulpes_Vulpes

SELECT * FROM internet

Op maandag 19 november 2001 13:50 schreef Pelle het volgende:

...

En dit zou ik ook snappen:
code:
1
2
3
<?
<form name="<? print $table; ?>" method=post action=index.php?table=<? print $table; ?>>
?>
En ik zou het zonder de eeste <? en de laatste ?> doen :P

Love begins with a metaphor. Which is to say, love begins at the point when a woman enters her first word into our poetic memory. - Milan Kundera


  • Pelle
  • Registratie: Januari 2001
  • Laatst online: 16:41

Pelle

🚴‍♂️

Op maandag 19 november 2001 14:02 schreef Vulpes_Vulpes het volgende:
En ik zou het zonder de eeste <? en de laatste ?> doen :P
Inderdaad.. had het eerst tussen PHP-tags staan, maar die voegen automagisch de <? en ?> toe. En dat wou ik niet, dus ik heb 'm toen weer ge-edit er van de php-tags code-tags gemaakt. Wat ik niet doorhad was dat die <? en ?> nu ook hard in mijn reply stonden.. vandaar dat ze er nog steeds omheen stonden :)

Maar bedankt voor de oplettendheid (heb nog steeds niet genoeg koffie op 8-) ).

/edit:
Pelle... Eens zal ik je krijgen... grrmmbblll
:?

  • Vulpes_Vulpes
  • Registratie: Februari 2001
  • Laatst online: 01-02-2022

Vulpes_Vulpes

SELECT * FROM internet

Op maandag 19 november 2001 14:07 schreef Pelle het volgende:

[..]

Pelle... Eens zal ik je krijgen... grrmmbblll

:?
Gegege, dat ging over 'pt' of 'px' gebruik met css in verschillende browsers... We liepen elkaar toen af te troeven en jij won toen de laatste slag. Vandaar die sig. ;)

Love begins with a metaphor. Which is to say, love begins at the point when a woman enters her first word into our poetic memory. - Milan Kundera


  • Pelle
  • Registratie: Januari 2001
  • Laatst online: 16:41

Pelle

🚴‍♂️

Op maandag 19 november 2001 14:22 schreef Vulpes_Vulpes het volgende:
Gegege, dat ging over 'pt' of 'px' gebruik met css in verschillende browsers... We liepen elkaar toen af te troeven en jij won toen de laatste slag. Vandaar die sig. ;)
Oh toen, in een vaag, grijs verleden :)

* Pelle moet zeggen dat Vulpes_Vulpes' oplettendheid al een aardige stap in de richting was :o

  • Vulpes_Vulpes
  • Registratie: Februari 2001
  • Laatst online: 01-02-2022

Vulpes_Vulpes

SELECT * FROM internet

Op maandag 19 november 2001 14:24 schreef Pelle het volgende:

[..]

Oh toen, in een vaag, grijs verleden :)

* Pelle moet zeggen dat Vulpes_Vulpes' oplettendheid al een aardige stap in de richting was :o
Ja, ik ben tegenwoordig van alle markten thuis. ;) Het wordt dus steeds moeilijker voor je! :D >:)

(gege, maar irl is het toch wel :z voor Vulpje :) )

Love begins with a metaphor. Which is to say, love begins at the point when a woman enters her first word into our poetic memory. - Milan Kundera

Pagina: 1