2011-08-14 9 views
0

このコードを更新して、自分の画像のURLを検証するためにjavascriptを呼び出す必要があります。これは、埋め込まれたJavaScriptでxhtmlをエコーするPHPです。javascriptをxhtml属性として埋め込むことはできますか?

echo "<img class = \"c\" src=\"$fav\" alt=\"\"\/><a name = \"a1\" class = \"b\" href = \"$ass_array[url]\">$ass_array[name]</a>"; 

これは私が持っているものです。それは働くでしょうか?

echo "<img class = \"c\" src=\"<script type=\"text/javascript\">validate_fav($fav)</script>\" alt=\"\"\/><a name = \"a1\" class = \"b\" href = \"$ass_array[url]\">$ass_array[name]</a>"; 

ありがとうございました。

+0

あなたは「それは大丈夫です」とはどういう意味ですかましたか?それは働くでしょうか?それは一般的ですか?等 – Ryan

+0

もちろん、それは動作しません、 'src'属性は通常HTMLですか?それはURLです。それでプログラム的に設定してください。 – Ryan

答えて

4

いいえ、それは無効なXHTMLです。 srcを<script type=に設定すると、マークアップが無効になります。

あなたのような何かをする必要があります

echo "<img id=\"theimg\" class = \"c\" src=\"$fav\" alt=\"\"\/><a name = \"a1\" class = \"b\" href = \"$ass_array[url]\">$ass_array[name]</a>"; 

?> 

<script type="text/javascript"> 
    document.getElementById('theimg').setAttribute('src', validate_fave($fav)); 
</script> 

<?php 
+0

src属性をそれ自身に設定すると、画像がリロードされるか、または新しい画像に設定されている場合にのみ発生します。 –

+0

@Chris Aaker私はすべてのブラウザについてはわかりませんが、画像をダウンロードした後はブラウザに強制的に画像をキャッシュさせない限り、画像をダウンロードした後はsrcを離れた場所に戻して戻しても再ダウンロードされません。私は他のブラウザも同じように推測しています。 – Paulpro