动态添加/追加alt值?

时间:2012-02-03 14:21:36

标签: php jquery html dynamic append

新手(也许是愚蠢的)问题:如何在下面的代码中使用“alt”的值来添加/附加到“img”(在“img”和“a”结束标记之间)?除了如何添加/附加硬编码文本之外,我还没有找到其他任何示例,但我希望它能够动态完成。

$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>'

4 个答案:

答案 0 :(得分:1)

jQuery for all img with afteralt css class(php and jQuery codes);

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

答案 1 :(得分: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>'

答案 2 :(得分:0)

jQuery代码

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

答案 3 :(得分: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$ss表示字符串,d表示数字)。< / p>