2012-02-03 14 views
0

初心者(おそらく愚かな)質問:「img」(「img」と「a」の終了タグの間に)を追加/追加するには、以下のコードで「alt」の値を使用するにはどうすればよいですか?ハードコーディングされたテキストを追加/追加する方法以外にも、私はそこでの例を見つけることができませんでしたが、私はそれを動的にしたいと思っています。alt値を動的に追加/追加しますか?

$html .= '<a href="#imgshow" data-transition="pop" data-index="'.$i.'" data-rel="dialog" id="thumb"> 
     <img src="https://[someurl]/'.rawurlencode($this->_decode_path($xml->COM->MOVIE[$i]->attributes()->dbIcoFilename)).'" alt="'.$xml->COM->MOVIE[$i]->attributes()->nameS.'"> 
     </img></a>' 

答えて

1

jQuery for afteralt cssクラス(phpおよびjQueryコード)のすべてのimg。

PHP;

$html .= '<a href="#imgshow" data-transition="pop" data-index="'.$i.'" data-rel="dialog" id="thumb"> 
     <img src="https://[someurl]/'.rawurlencode($this->_decode_path($xml->COM->MOVIE[$i]->attributes()->dbIcoFilename)).'" alt="'.$xml->COM->MOVIE[$i]->attributes()->nameS.'" class='afteralt'> 
     </img></a>' 

のjQuery:

$.each($("img.afteralt"), function() { 
    $(this).after($(this).attr("alt")); 
}); 
+0

これは簡単で、私のコードでうまくいきます。 – Karin

0
$html .= '<a href="#imgshow" data-transition="pop" data-index="'.$i.'" data-rel="dialog" id="thumb"> 
     <img src="https://[someurl]/'.rawurlencode($this->_decode_path($xml->COM->MOVIE[$i]->attributes()->dbIcoFilename)).'" alt="'.$xml->COM->MOVIE[$i]->attributes()->nameS.'"> 
     </img>'.$xml->COM->MOVIE[$i]->attributes()->nameS.'</a>' 

あなたが<img />なく<img></img>は(スラッシュのみXHTMLを使用して要求されている)ので、右のコードが

$html .= '<a href="#imgshow" data-transition="pop" data-index="'.$i.'" data-rel="dialog" id="thumb"> 
     <img src="https://[someurl]/'.rawurlencode($this->_decode_path($xml->COM->MOVIE[$i]->attributes()->dbIcoFilename)).'" alt="'.$xml->COM->MOVIE[$i]->attributes()->nameS.'" />'.$xml->COM->MOVIE[$i]->attributes()->nameS.'</a>' 
+0

私はとにかく...おかげで、これは私の問題をどのように影響するかわかりません。 – Karin

0

jQueryのコードでなければなりません書く必要があることに注意してください

$('a#thumb').html($('a#thumb').html()+$('a#thumb').children('img').attr('alt')) 
+0

ありがとうございます、これは私のコードは、ギャラリー内の他のすべての画像を最初の画像と置き換え、それは名前(動的)ですので、ほとんど私が必要なものです:) – Karin

+0

あなたは大歓迎です。あなたはこれをupvoteするかもしれないので、他の人もそれに気づくかもしれません:) – beerwin

0

データを繰り返し処理し、有用なデータを見つけてから、出力をコンパイルします。必要があります。あなたはどこでもあなたがしたいデータを使用することができます。

$html = ''; 
foreach ($xml->COM->MOVIE as $i => $movie) 
{ 
    $url = 'https://[someurl]/'.rawurlencode($this->_decode_path($movie->attributes()->dbIcoFilename)); 
    $alt = $movie->attributes()->nameS; 
    $html .= sprintf(
    '<a href="#imgshow" data-transition="pop" data-index="%d" data-rel="dialog" id="thumb"> 
     <img src="%s" alt="%3$s"> 
     </img>%3$s</a>' 
     , $i, $url, htmlspecialchars($alt) 
    ); 
} 

をこの例では、最初のデータがforeachの内側に抽出されます。その後、sprintfという出力文字列にコンパイルされます。この関数は一般的であり、変数をパターンに置き換えるのに役立ちます。文字列の同じ値を数字のパラメータ位置(ここでは3%3$s、は文字列、dは数字です)で再使用します。

+0

私はこのコードが良いと確信していますが、私の目標を達成するために必要以上に、ありがとう。 – Karin

関連する問題