使用jQuery返回DIV内容

时间:2015-05-15 19:20:30

标签: javascript jquery html

虽然这看起来很简单,但我很难得到我想要的东西。我在一个页面上有很多DIV,我用它来查找文本内容:

var Name =  $(".class").text();

虽然这有效,但它会立即返回页面上所有DIV的所有文本,例如

Name1Name2Name3Name4Name5

我从这些DIV中的一个jQuery onclick事件中调用此请求。所以我的目标是获取onclick被触发的DIV的内容,而不是一切。最终的结果是,如果我按下名称3的onclick它只会获得该DIV的内容,因此只给我Name3。

DIV确实有一个我可以检查的唯一ID,但我无法弄清楚如何使用它对我有利。 DIV结构如下:

<div id="2242yrcwrmz5t1zyt03" class="class1" tabindex="-1">

谢谢!

6 个答案:

答案 0 :(得分:4)

您可以使用$(this)

获取您点击的元素
$(".class").click(function(){
   alert($(this).text());  
});

答案 1 :(得分:2)

您的点击事件正在您需要停止的DOM层次结构中冒泡,可以使用event.stopPropagation

来完成
$('.class1').click(function(event){
     alert($(this).text());
     event.stopPropagation();
});

答案 2 :(得分:1)

请阅读当前div中带有this

的文字
$(".class").on("click", function() {
    console.log($(this).text());
});

答案 3 :(得分:0)

我相信您需要使用event.target属性来查找实际点击的元素。

假设您的DIV包含Name1,Name2等,其ID为outerElement

$("#outerElement").on("click", function(e) {
  var Name =  $(e.target).text();
});

更多信息: https://api.jquery.com/category/events/event-object/

答案 4 :(得分:0)

如果单击div中的元素,则应使用

var name = $( this ).parent(".class").text();

答案 5 :(得分:0)

你可以使用jQuery parent()方法

$(this).parent().text()

heres jsfiddle的例子 https://jsfiddle.net/c628Lwuq/