我试图将一些数据或attr固定到editButton类,但仅限于给定thisId的元素。 它仅适用于类,但当我将thisId作为第二个参数添加时,它将停止工作。我也尝试使用.find()但它也不起作用。 我做错了什么?
<a href="#!" class="editButton" id="{{$comment->h_id}}" onClick="editComment({{$comment->h_id}}, `{{$comment->f_text}}`)">
<script>
function editComment(id, text){
var thisId = "#" + id;
$(".editButton", thisId).attr("PinComment", "some new comment");
alert($(".editButton", thisId).attr("PinComment"));
}
</script>
答案 0 :(得分:0)
$(".editButton", thisId)
相当于$(thisId).find(".editButton")
;当且仅当匹配$(".editButton")
的元素是匹配$(thisId)
的元素的后代时,才会起作用。
但是,从您的代码段开始,$(".editButton")
和$(thisId)
都是相同的元素,因此您对$(".editButton", thisId)
的使用效果不如预期。
阅读this以了解您正在使用的API。
要解决您的问题,您可以采用这种方法:
var selector = ".editButton" + thisId;
var element = $(selector);
element.attr("PinComment", "some new comment");
alert(element.attr("PinComment"));