我正在尝试访问一个班级但是我无法访问。
这个类是一个标签。此标记之外的任何内容都可访问。有人能让我知道为什么我无法通过JQuery访问这个类吗?
以下是我在检查页面时看到的代码。
下面是我写的JQuery代码:
$ ('.btn-default').on('click',function(){
alert("JQuery Running!");
});
答案 0 :(得分:4)
你的jQuery代码看起来很漂亮。我猜是你的按钮包含类btn-default是在加载DOM之后动态添加的,这就是你无法用你的选择器找到它的原因。试试
$ ('body').on('click','.btn-default',function(){
alert("JQuery Running!");
});
建议不要在身体上绑定你的事件,最好使用另一个与你的按钮有点接近的父母。
答案 1 :(得分:0)
试试这样:
我使用parents
方法来识别按钮。
if ($( '.btn-default' ).parents('.main-level').length){
$( '.btn-default').click(function() {
alert( "Handler for .click() called." );
});
}

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class ="main-level">
<div class ="level1">
<div class = "level2">
<other nested html>
<button class = "btn-default" id="1">
Click here
</button>
</other nested>
</div>
</div>
</div>
&#13;
答案 2 :(得分:0)
试试这个: -
<!DOCTYPE html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script>
$(document).ready(function(){
//if onhover get class or get id name
//$("p").hover(function(){
//if onclick get class or get id name
$ ('p').on('click',function(){
//if get onhover id
alert("NOW GET ON HOVER ID NAME:--"+" "+this.id);
//if get onhover class
alert("NOW GET ON HOVER CLASS NAME:--"+" "+$(this).attr('class'));
});
});
</script>
</head>
<body>
<p class="getclass" id="get_class_id" >click</p>
<!-- <p class="getclass" id="get_class_id" >on hover</p> -->
</body>
</html>
&#13;