Javascript Hot可根据值将不同的img插入div
我试图将img插入div,但它应该是不同的img,具体取决于动态填充的div值 因此,如果值是test insert image test.jpg,如果值是blabla insert image blabla.jpg等等(我得到了大约25个div值) 我让它只为第一个工作,现在,它只是填充一个img无处不在,如果我使用Javascript Hot可根据值将不同的img插入div,javascript,jquery,html,image,Javascript,Jquery,Html,Image,我试图将img插入div,但它应该是不同的img,具体取决于动态填充的div值 因此,如果值是test insert image test.jpg,如果值是blabla insert image blabla.jpg等等(我得到了大约25个div值) 我让它只为第一个工作,现在,它只是填充一个img无处不在,如果我使用 var divText = $('div').first().text(); 我的名字vars和img的名字jpg完全一样 可能需要以某种方式循环它,一些帮助将不胜感激 到目前
var divText = $('div').first().text();
我的名字vars和img的名字jpg完全一样
可能需要以某种方式循环它,一些帮助将不胜感激
到目前为止,我的代码是
HTML
测试
布拉布拉
达斯达
khjkhjk
jQuery
var name = 'test';
var name1 = "blabla";
var imgPath = "folder/images/";
var divText = $('div').text();
if (divText === name) {
$('div').prepend('<img src="' + imgPath + 'test' + '.jpg"/>');
}
if (divText === name1) {
$('div').prepend('<img src="' + imgPath + 'blabla' + '.jpg"/>');
}
var name='test';
var name1=“blabla”;
var imgPath=“folder/images/”;
var divText=$('div').text();
if(divText==名称){
$('div')。前缀(“”);
}
如果(divText==name1){
$('div')。前缀(“”);
}
这里是我的小提琴-最简单的方法是使用jquery的each
$('div').each(function(){
var $div = $(this);
$div.prepend(<img src="' + imgPath + $div.text() + '.jpg"/>');
});
$('div')。每个(函数(){
var$div=$(本);
$div.prepend(');
});
调用
$('div').each()
时,jquery首先选择文档中的每个div。然后它在div上循环并调用您指定的回调。“this”绑定到循环中的当前div,因此当我们调用$(this)时,我们使用jquery“包装”该div,这允许我们使用.text和.prepend之类的函数 尝试为此使用每个循环
$.each($('div'), function() {
var img_name = $(this).text();
$(this).prepend('<img src="' + imgPath + img_name + '.jpg"/>');
});
$。每个($('div'),函数(){
var img_name=$(this).text();
$(this.prepend(“”);
});
我在中做了一些假设(将foo
类添加到div中,等等)
我相信你所需要的就是:
var imgPath = "folder/images/";
$('div.foo').each(function(index, element){
var divText = $(element).text();
$('div').prepend('<img src="' + imgPath + divText + '.jpg"/>');
});
var imgPath=“folder/images/”;
$('div.foo')。每个(函数(索引,元素){
var divText=$(元素).text();
$('div')。前缀(“”);
});
您可以通过添加一个类,以另一种方式识别div,例如:
<div class="dynamic-image">test</div>
<div class="dynamic-image">blabla</div>
对于循环部分,您可以这样做。请注意,您希望使用innerHTML而不是文本。另外,请记住,$('div')返回一个div数组(我将其设置为变量div)
var divs=$('div');
对于(变量i=0;i
<div class="dynamic-image">test</div>
<div class="dynamic-image">blabla</div>
var path = 'path/to/images';
$('.dynamic-image').each(function(i, e) {
var $e = $(e),
img = new Image();
img.src = path + '/' + $e.text() + '.jpg';
$e.prepend(img);
});
var divs = $('div');
for (var i = 0; i < divs.length; i++) {
alert(divs[i] + " " + divs[i].innerHTML);
}