3

我知道这个问题在 stackoverflow 中非常熟悉,但我仍然找不到我的解决方案。当我单击父 div 时,我想获取我的子 div 的值,但我当前的代码给了我“未定义”。我的html如下:

<div class="main">
  <div class="testId">
    1
  </div>
  <div class="testName">
    test
  </div>
  <div class="testDob">
    10/10/10
  </div>

</div> 

我的脚本如下

var id = $(this).child(".testId").innerHTML;

有什么想法吗?

4

5 回答 5

6

尝试使用find()

var id = $(this).find(".testId").text();
于 2013-10-08T15:54:38.897 回答
3

"find" 查找 div.main 中的元素

var id = $(this).find(".testId").html();
console.log(id);
于 2013-10-08T15:58:56.317 回答
1

使用.children()没有选择器.child()

var id = $(this).children(".testId")[0].innerHTML;

或者

var id = $(this).children(".testId").text();

或者

var id = $(this).children(".testId").eq(0).text();
于 2013-10-08T15:54:55.200 回答
1

我认为这个应该有效

$('.main').click(function(){
    var value = $(this).child(".testId").text();
})    
于 2013-10-08T15:56:27.227 回答
1

这是一个工作示例

<!DOCTYPE html>

<html lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta charset="utf-8" />
    <title></title>
    <script src="http://code.jquery.com/jquery-1.10.1.min.js"></script>
</head>
<body>
    <div class="main">
               <div class="testId">
               1
               </div>
               <div class="testName">
               test
               </div>
               <div class="testDob">
               10/10/10
               </div>

            </div> 

    <script>
        $(".main").click(function () {
            var id = $(this).children(".testId").html();
            alert(id)
        })
    </script>
</body>
</html>
于 2013-10-08T16:11:12.303 回答