将.data / .attr固定到特定的ID和类

时间:2015-08-24 13:26:29

标签: javascript

我试图将一些数据或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>

1 个答案:

答案 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"));