如果单击某个元素,我想将函数作为参数传递。 但是在我传递的函数中,我想从被点击的元素中设置属性信息。
将属性值传递给函数内部的最佳方法是什么?
我的JavaScript看起来像这样:
$('.edit-link').livequery(function(){
$('.edit-link').click(function(){
WMT.openOverlay($('#edit'),{
relativeTo: $('.search'),
width: $('.search'),
close: $('#cancel_edit'),
fillFields: function(){
return $.getJSON("ajax/edit.php?id=" + $(clickedElement).data('id'));
}
});
});
});
我想在json中发送数据属性“id”。
答案 0 :(得分:1)
您需要使用this
。它指向被点击的元素:
$(this).data('id')
如果这不起作用,请尝试:
var clickedElement = this;
WMT.openOverlay($('#edit'),{
// ... rest of your code.