Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/446.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 按数据id获取innerHtml_Javascript_Html_Innerhtml - Fatal编程技术网

Javascript 按数据id获取innerHtml

Javascript 按数据id获取innerHtml,javascript,html,innerhtml,Javascript,Html,Innerhtml,我有很多和特定的数据id,想先得到 例如,在这个示例中,它将是:“世界” 也许您想使用firstElementChild而不是firstChild 或者您可以使用CSS选择器[data id=“1123066248731271”]>div:first child: var target = $('[data-id="1123066248731271"] > div:first-child'); alert(target.innerHTML); 编辑: 我注意到一个翻译错误。我自己

我有很多
  • 和特定的
    数据id
    ,想先得到

    例如,在这个示例中,它将是:“世界”


    也许您想使用
    firstElementChild
    而不是
    firstChild

    或者您可以使用CSS选择器
    [data id=“1123066248731271”]>div:first child

      var target = $('[data-id="1123066248731271"] > div:first-child');
      alert(target.innerHTML);
    
    编辑:

    我注意到一个翻译错误。我自己不使用jQuery,所以我使用了
    document.querySelector
    ,而不是
    $
    。但是,
    $
    的行为对应于
    document.querySelectorAll
    。对不起

    这应该很好:

      var target = $('[data-id="1123066248731271"] > div:first-child')[0];
      alert(target.innerHTML);
    
    或者这个:

      var target = document.querySelector('[data-id="1123066248731271"] > div:first-child');
      alert(target.innerHTML);
    
    作为非jQuery用户,我个人更喜欢后者。

    第一个问题
    $('[data id=“1123066248731271]”)
    返回了一个包含所有元素的对象,其中包含[data id=“1123066248731271]”。对于第一个元素,您需要在“
    $”(“[data id=“1123066248731271]”)之后添加[0]。[0]

    现在,如果要将div元素作为目标,需要将div指定为$like:
    $('[data id=“1123066248731271”]div')[0]
    。现在,您得到了第一个div,您可以使用:
    target.innerHTML

    完整代码:

    var target = $('[data-id="1123066248731271"] div')[0];
    alert(target.innerHTML); 
    
    
    没有Jquery(我认为更简单):


    也许这就是你需要的

    作为一个jquery元素,您可以使用
    find()
    方法查找他内部的所有
    div
    元素,使用
    first()
    ,您得到第一个元素,最后,使用
    html()
    ,您得到它的内容

    var target=$('[data id=“1123066248731271]”);
    警报(target.find('div').first().html())
    
    
    
  • World
  • 这是否回答了您的问题?可能jQuery没有.firstChild属性。您会收到什么错误消息?该元素的
    innerHTML
    将不是“World”;这可能是
    World
    您可能需要使用函数获得的文本。这可能也适用。但是请注意,它可能会返回整个
    li
    元素的内部文本内容,而不仅仅是第一个
    div
    。(但如果只有第一个
    div
    包含文本内容就可以了,我想。)这个答案对我不适用,它是show“undefined”,无论如何,谢谢。
      var target = $('[data-id="1123066248731271"] > div:first-child')[0];
      alert(target.innerHTML);
    
      var target = document.querySelector('[data-id="1123066248731271"] > div:first-child');
      alert(target.innerHTML);
    
    var target = $('[data-id="1123066248731271"] div')[0];
    alert(target.innerHTML); 
    
    
    var target = document.querySelector('[data-id="1123066248731271"] div');
    alert(target.innerHTML);