我有一组缩略图,如:
<div id='thumb' class='anImage.jpeg'>
<img src='anImage.jpg' />
</div>
......
<div id='thumb' class='anotherImage.jpeg'>
<img src='anotherImage.jpg' />
</div>
正如你所看到的,我使用每个DIV的'class'以便将来能够通过它包含的Image Name找到所需的DIV。
我有一个上传者(ajax模仿,使用iframe)。当我上传新图像时,我的javascript函数从php文件中获取确认。如果没关系,我的js代码会添加(最后是appendChild)一个新的DIV和IMG,如下所示:
<div id='thumb' class='newUploaded.jpeg'>
<img src='newUploaded.jpg' />
</div>
现在关于这个问题: 我有另一个jQuery函数,通过点击任何图像(RENAME BUTTON)发送到被点击的php文件图像名称。但是在服务器端重命名文件之后,我需要使用jQuery在客户端更新映像名称。所以,我做了类似的事情:
$.ajax({
.....
success: function(){
$("div.oldname").attr("class", "newname");
}
.....
});
并且只有在上传后才创建文件时它才起作用。我的代码不适用于刚刚由javascript appendChild()函数创建的元素。
答案 0 :(得分:0)
您是否尝试删除旧类并添加新类而不是使用.attr()方法:
$("div.oldname").removeClass('oldname').addClass('newname');
另外,您是否有理由将文件名用作类?
答案 1 :(得分:0)
发现..问题是
<div class="filename"></div>
文件名如:img.jpg有一个点:)所以我们有不正确的类:
$('div.img.jpg').blabla() // more than 1 dot ;