这是父 div,它是使用 Moustache.js 创建的 html 模板
<div class="downloadReport" param ="{{#params}}{{id}}{{/params}}"><a href="#">
<img class="downloadMVReportFromAdmin" alt ="{{mainTitle}}" src="{{indexPageImageURL}}"
/><br/>'
'<input type="button" id="{{id}}-button" value="Download"
class="downloadMVReportFromAdmin" param="{{#params}}{{paramValue}}{{/params}}"/></a>
</div>'
我正在尝试使用
$(.downloadMVReportFromAdmin).live('click',function(){
var url = $(this).parent('.downloadReport').attr("param");
alert(url);
}
我得到了变量 url 的未定义值 我只是遵循 jquery 站点中为 jquery.parent() 给出的语法。如有错误请指正。
最佳答案
您应该使用.closest
而不是.parent
.parent
仅匹配直接父级,而 .closest
会遍历 DOM,直到找到与您的选择器匹配的匹配项。
关于jquery 未定义 jquery.parent().attr(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9165245/