Toon posts:

[JS] Quotes (te kort aan)

Pagina: 1
Acties:

Verwijderd

Topicstarter
Waarschijnlijk erg basic, maar helaas via de search en in mijn boek er niets over kunnen vinden :(

Ik ben bezig met een stukje Javascript:
PHP:
1
2
3
4
5
echo "\n  Text[1]=[\"Contact persoon:\",\"";
for ($i = 1; $data = mysql_fetch_row($result); ++$i) {
  echo "<A HREF='javascript:SelectTMContact('" . $data[3] . "');'>" . $data[3] . "</A><BR>";
}
echo "\"];";


Dit gaat dus niet werken vrees ik.
Wat is dit?
Dit is een stukje code voor een alternatief pulldown menu, dat maakt op deze manier gebruik van JS variabelen.
ik combineer dat met data uit een MySQL database, en dat gaat perfect, mits het integers zijn. Nu is echter het probleem dat ik dit keer geen integer wil doorgeven, maar een 'varchar'
Ik dacht zelf, heel handig, om het in quotes te zetten. Helaas kom ik nu dus quotes te kort :)
de " wordt gebruikt om het begin en einde van de PHP echo weer te geven.
de \" gebruikt het stukje javascript om de var in te zetten
de ' wordt gebruikt voor de link aan te geven
nu kom ik er dus nog EEN te kort om de inhoud van de var weer te geven.

Is dit op een of andere manier te omzeilen?

[ Voor 8% gewijzigd door Verwijderd op 02-02-2004 14:38 . Reden: regel bij de code, voor duidelijkheid. ]


  • crisp
  • Registratie: Februari 2000
  • Nu online

crisp

Devver

Pixelated

gewoon kwestie van de juiste quotes gebruiken en goed escapen:

PHP:
1
echo '<a href="javascript:SelectTMContact(\'' . $data[3] . '\');">' . $data[3] . '</a><br />';


Ik ben trouwens geen voorstander van javascript: in de href; ik zet het liever in een onclick eventhandler.

[ Voor 26% gewijzigd door crisp op 02-02-2004 14:35 ]

Intentionally left blank


Verwijderd

Topicstarter
crisp schreef op 02 februari 2004 @ 14:34:
gewoon kwestie van de juiste quotes gebruiken en goed escapen:

PHP:
1
echo '<a href="javascript:SelectTMContact(\'' . $data[3] . '\');">' . $data[3] . '</a><br />';


Ik ben trouwens geen voorstander van javascript: in je href; ik zet het liever in een onclick eventhandler.
Die gaat dus niet werken omdat de regel er boven ook nog geld.
Het komt in een array, waarbij de " het begin en einde van de data aangeeft.
in princiepe mag de " dus al niet meer gebruikt worden.

(en in dit geval maakt voorkeur niets uit, de onClick() zal het zelfde probleem met zich mee brengen)

[ Voor 17% gewijzigd door Verwijderd op 02-02-2004 14:38 ]


  • crisp
  • Registratie: Februari 2000
  • Nu online

crisp

Devver

Pixelated

waarom zet je niet alleen $data[3] in je array, en regel je de rest met script (is toch gelijk voor alle entries)?

Maar in elk geval, als het in een JS-array moet komen moet je dus gewoon nog wat extra escape-tekens toevoegen; hoeveel en waar kan je zelf natuurlijk wel eenvoudig uitvinden met een simpel testscriptje ;)

Intentionally left blank