我正在尝试过滤结果循环以查找特定文本,如果存在,我想附加一个带有缩略图的div。我有什么工作,但它会在循环中附加所有div。我试过。()最近和.parent()。所有这些都附加循环中的所有div。我只想将最近的div附加到过滤后的文本中。
我做错了什么?
if( $("span").text().indexOf('90509BR') >= 0) {
$('div.little-img').parent().find('div.little-img').append('<img style="float:left;" height="75px" width="75px" id="theImg" src="/images/uploads/EPDM_Yellow_Peroxide_p8sm.png" />');
}
这是一个小提琴http://jsfiddle.net/C9Fft/4/
答案 0 :(得分:0)
$('span:contains("90509BR")').closest('div.little-img').append('<img style="float:left;" height="75px" width="75px" id="theImg" src="/images/uploads/EPDM_Yellow_Peroxide_p8sm.png" />');
答案 1 :(得分:0)
.closest
不适用于您的标记。
您需要以不同的方式遍历树。
http://jsfiddle.net/justiceerolin/zVe69/
$('span:contains("90509BR")').parent().prev('div.little-img')
.append('<img style="float:left;" height="75px" width="75px" id="theImg" src="/images/uploads/EPDM_Yellow_Peroxide_p8sm.png" />');
:contains
进行文字搜索。 parent()
升级到.small
,而prev会查看之前的元素。