6

我正在尝试更改 Jquery 中的图像源

<a href="" class="wanted" id="'.$status_id[$num].'"><img src="/images/wanted.png">

通过一个 JQuery 选择器:

$(".wanted "+ id).attr("src", '/images/wanted_.png');

whereid在 javascript 中定义为 php 变量$status_id[$num]。我第一次尝试使用$(this)无济于事。任何见解都会有所帮助。

4

4 回答 4

8

当您访问时$(".wanted"+id),您实际上是在尝试访问类名 = Want+id 的元素。这是因为“。” 在“想要”之前。此外,您似乎正在<a>直接访问标签并设置它的src属性。您需要访问<img>标签。您可以尝试的是:

var x=document.getElementById(id);
$(x).find("img")[0].setAttribute("src","/images/wanted_.png");
于 2012-07-20T04:28:34.290 回答
5

HTML 元素的 ID 在整个页面中应该是唯一的。

你可以试试

//I assume id variable is already assigned the id of the element e.g var id = "<?php echo $status_id[$num] ?>";

$("#"+ id).attr("src", '/images/wanted_.png');

如果您真的想选择一个具有给定 id 和所需类的元素,请尝试以下操作:

$("#"+ id + ".wanted ").attr("src", '/images/wanted_.png');
于 2012-07-20T03:51:13.707 回答
0

在创建 JS 时您可以访问该 ID,或者您没有。如果你不这样做,那么你将不得不找到另一种方法来定位该项目,例如:$('.wanted')

如果你这样做,那么把它放在:$('#<?php echo $status_id[$num]; ?>')

于 2012-07-20T03:50:45.610 回答
0

给它另一个类imgToChange,然后使用$(".imgToChange")

于 2012-07-20T04:30:28.243 回答