我正在尝试将<span>
中的数字用于.each()
以查找所有span
,但在获取其中的数字时遇到问题。我想将跨度中的数字附加到图像名称,但没有运气?
代码:
var _td = $("td.tri-img span");
$.each(_td, function(i, val){
$(val).html();
console.log(val);
var _img = $('.wrap-graph.relative img');
var _img_src = 'img/triangle' + val + '.png';
_img.attr('src', _img_src);
});
HTML:
<td class="tri-img"><img class="one"src="" alt="" ><span>11</span></td>
<td class="tri-img"><img class="two" src="" alt="" ><span>33</span></td>
<td class="tri-img"><img class="three" src="" alt="" ><span>44</span></td>
<td class="tri-img"><img class="four" src="" alt="" ><span>66</span></td>
答案 0 :(得分:2)
更改
var _img_src = 'img/triangle' + val + '.png';
到
var _img_src = 'img/triangle' + val.innerHTML + '.png';
答案 1 :(得分:1)
试试这个:
$("td.tri-img span").each(function(){
var $this = $(this);
$this.prev('img').attr('src', 'img/triangle'+$this.text()+'.png');
});
编辑:如果要清除任何非数字的文本,请执行以下操作:
$("td.tri-img span").each(function(){
var $this = $(this),
text = $this.text().replace(/\D/, '');
$this.prev('img').attr('src', 'img/triangle'+text+'.png');
});