我想从“rtsSelected”的父元素中检测第二类“rpvItem2”。我在这里阅读了不同的文章,但无法解决这个问题。
该代码在我的本地PC html文件中正常工作。它也有效 在线但有控制台错误。
在控制台中: TypeError:$(...)。parent(...)。attr(...)未定义
我的jQuery:
// window load BEGINS
$(window).load(function () {
var getRtsSelected = $("ul.tabset ul.rtsUL").find(".rtsSelected");
var testtabsetparent = $(getRtsSelected).parent('li').attr('class').split(' ').pop();
if (testtabsetparent != '') {
$(".tab-content .tab-box #ContentPlaceHolder1_" + testtabsetparent + " iframe").addClass("content-loaded");
}
});
// window load ENDS
我的HTML:
<ul id="navtabs" class="tabset">
<li>
<ul class="rtsUL">
<li class="rtsLI rtsFirst rpvItem1">
<a href="#" class="rtsLink rtsBefore">Item One</a>
</li>
<li class="rtsLI rpvItem2">
<a href="#" class="rtsLink rtsSelected">Item Two</a>
</li>
</ul>
</li>
答案 0 :(得分:0)
试试这个,
$(document).ready(function(){
var cls = $("ul.tabset ul.rtsUL").find(".rtsSelected").parent('li').attr('class').split(' ').pop();
console.log(cls);
});
将返回
<强> rpvItem2 强>
答案 1 :(得分:0)
$(window).load(function () {
var getRtsSelected = $("ul.tabset ul.rtsUL").find(".rtsSelected");
var testtabsetparent = $(getRtsSelected).parent('li').attr('class').split(' ').pop();
if (testtabsetparent != '') {
$(".tab-content .tab-box #ContentPlaceHolder1_" + testtabsetparent + " iframe").addClass("content-loaded");
}
});
&#13;
<ul id="navtabs" class="tabset">
<li>
<ul class="rtsUL">
<li class="rtsLI rtsFirst rpvItem1">
<a href="#" class="rtsLink rtsBefore">Item One</a>
</li>
<li class="rtsLI rpvItem2">
<a href="#" class="rtsLink rtsSelected">Item Two</a>
</li>
</ul>
</li>
<script src="https://code.jquery.com/jquery-1.12.4.min.js" integrity="sha256-ZosEbRLbNQzLpnKIkEdrPv7lOy9C27hHQ+Xp8a4MxAQ=" crossorigin="anonymous"></script>
&#13;
我测试了这段代码,这是有效的。可能是您使用旧版jquery