2009-08-22 8 views
0

Je cours le < a> tag en php. Chaque fois que je passe un argument dans la fonction js, il n'est pas appelé, mais si je passe des arguments vides, la fonction est appelée.javascript fonction ne pas être appelé lorsque les arguments de php

js:

function displayBigImage(img){ 
    alert("inside func"); 
} 

php:

//NOT WORKING: 
echo "<a href='javascript:displayBigImage('".$row['IMG_ID']."')'>Press</a>"; 

//WORKING: 
echo "<a href='javascript:displayBigImage()'>Press</a>"; 

J'ai aussi essayé avec des valeurs d'argument de harcode comme,

echo "<a href='javascript:displayBigImage('sample.jpg')'>Press</a>"; 

ou

echo "<a href='javascript:displayBigImage(sample.jpg)'>Press</a>"; 

Je ne comprends pas ce qui est mal?!?!?!?!

Veuillez répondre dès que possible.

Merci à l'avance

Répondre

8

Vous avez des problèmes de citer:

<a href='javascript:displayBigImage('sample.jpg')'> 

Vous ne pouvez pas utiliser des guillemets simples à la fois autour l'attribut HTML et dans les il. Vous devez utiliser différentes citations dans les deux endroits, par exemple:

<a href="javascript:displayBigImage('sample.jpg')"> 

donc dans votre PHP, qui devient:

echo "<a href=\"javascript:displayBigImage('".$row['IMG_ID']."')\">Press</a>"; 
1

Vous avez des guillemets dépareillées. Où vous avez ceci:

echo " < a href='javascript:displayBigImage('".$row['IMG_ID']."')'>Press</a >"; 

Vous devriez avoir ceci:

echo " <a href=\"javascript:displayBigImage('" . $row['IMG_ID'] . "')\">Press</a>"; 
1

Si vous utilisez des guillemets simples pour la déclaration de valeur de l'attribut HTML, vous ne pouvez pas utiliser les mêmes citations dans les valeurs d'attribut sans les décrire par des références de caractères.

Donc soit vous utilisez les guillemets doubles dans votre href valeur d'attribut:

echo "<a href='javascript:displayBigImage(\"".$row['IMG_ID']."\")'>Press</a>"; 

Ou vous utilisez des références appropriées de caractère:

echo "<a href='javascript:displayBigImage(&#27;".$row['IMG_ID']."&#27;)'>Press</a>"; 

Ou vous utilisez les guillemets doubles pour la déclaration de valeur d'attribut href :

echo "<a href=\"javascript:displayBigImage('".$row['IMG_ID']."')\">Press</a>"; 
+0

merci ... vous avez raison: D –

Questions connexes