Jquery在页面上找到div

时间:2015-12-01 22:24:55

标签: javascript jquery

我以为我正确地做到了这一点,但似乎无法使其正常工作并寻找答案。我想要做的是从ajax调用返回的信息动态创建的div中查找和检索文本。在成功的过程中,我创建了一个div和删除数字的列表。我想要发生的是当点击div获取值但我没有得到任何东西时。以下是div的创建方式。

$(".optionsBox").prepend("<div id='newList'>Navigate Pages </div>");
for (var i = 1; i <= ml; i++) {
    $("#newList").append("<div class='paging'>"+ i + "</div>");
}

我试过了:

$('.paging').click(function(){ 
     var number = $this.text();
}); 

$('.paging').on('click',function(){
     var num = $this.text();
});

我也看过.closest甚至.find当登录到控制台时,一切都是空白的。

我很擅长使这比应该更难。

2 个答案:

答案 0 :(得分:1)

尝试使用$(this)(使用当前元素构造的jQuery对象)而不是this并使用Jquery .text()来获取当前div中带有类paging的文本点击:

$('body').on('click', '.paging', function(){
     var number = $(this).text();
});

希望这有帮助。

$(".optionsBox").prepend("<div id='newList'>Navigate Pages </div>");
for (var i = 1; i <= 5; i++) {
  $("#newList").append("<div class='paging'>"+ i + "</div>");
}

$('body').on('click', '.paging', function(){
    var number = $(this).text();
  
    $('.result').text('Number ' + number + ' clicked');
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="optionsBox"></div>
<div class="result"></div>

答案 1 :(得分:0)

当你使用.append时...你可以使用

$(".optionsBox").on('click', '.paging', function(){
  var number = parseInt($(this).text() , 10);
});

看看Event binding on dynamically created elements?