2009-08-22 5 views
0

PHPで< a>タグを実行しています。 js関数で引数を渡すたびに呼び出されることはありませんが、空の引数を渡すと関数が呼び出されます。phpからの引数があるとjavascript関数が呼び出されない

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>"; 

私も同様harcodeの引数の値を試してみました、

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

または

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

何が間違っているのか分かりませんか?!?!?!?!

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

あなたは内の単一引用符にそれを周りのHTML属性との両方を使用することはできません:あなたは、あなたが引用に問題が事前

答えて

8

感謝。あなたは、例えば、2つの場所で異なる引用符を使用する必要があります。

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

だからあなたのPHPには、それは次のようになります。

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

あなたは、いくつかの不一致引用符を持っています。あなたがこれを持っている場合は:

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

あなたはこれを持っている必要があります。

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

あなたがHTML属性値の宣言のための単一引用符を使用している場合は、属性値内の同じ重引用符を使用することはできません文字参照によってそれらを記述することなく。

つまり、あなたのhref属性値内の二重引用符を使用するか:

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

それとも、適切な文字参照を使用します。

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

それとも、href属性値の宣言のための二重引用符を使用します:

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

ありがとうございました...あなたは正しいです:D –

関連する問題