【问题标题】:Get content from id inside id?从id里面的id获取内容?
【发布时间】:2014-03-19 12:55:09
【问题描述】:

我有类似的 HTML:

<div id='content'>
  <div id='price'>$100</div>
  <div id='another'>something</div>
</div>

我可以从 id="content" 之类的获取内容。

vl = document.getElementById("content").value;

在这个 id 中,我还有另一个 id="price"。但我无法直接从 id="price" 获取内容。

如何通过id='content'从 id="price" 获取内容。谢谢。

【问题讨论】:

标签: javascript jquery html css


【解决方案1】:

jQuery:

$("#price").text();

javascript:

document.getElementById("price").innerHTML;

DEMO

【讨论】:

    【解决方案2】:

    你可以如下使用:

    vl = document.getElementById("price").innerHTML;
    

    JSFiddle - 看看

    你也可以通过 .html().text() 方法使用 jquery

    【讨论】:

      【解决方案3】:

      试试,

      $('#content').html().find('#price').html();
      

      【讨论】:

        【解决方案4】:

        试试这个,

        var parent = document.getElementById('content');
        var childNodes = parent.childNodes;
        for(var i = 0, len = childNodes.length;i<len;i++){
            if(childNodes[i].id === "price") {
                alert(childNodes[i].innerHTML);
            }
        }
        

        【讨论】:

          【解决方案5】:

          使用 jquery,

           $("#content > #price").text();
          

          【讨论】:

          • 我觉得这行不通。但相反,这是:$("#content #price").text();
          【解决方案6】:

          您可以直接获取价格的价值:

          v2 = document.getElementById("price").value;
          

          【讨论】:

            【解决方案7】:

            使用 Jquery,

            v1= $('#content').html();
            v2=v1.find('#price');
            v3=v1.find('#another')
            

            【讨论】:

              【解决方案8】:

              试试这个:- http://jsfiddle.net/adiioo7/C3C4x/1/

              var price = document.querySelector("#content #price").innerHTML;
              
              console.log(price);
              

              【讨论】:

                【解决方案9】:

                仅当页面上有该项目之一时才应使用 ID。您将没有其他机会重新分配您的IDs,或者使用class 属性。

                试试这样选择,

                var vl = document.getElementById("content").getElementsByClassName("price")[0];
                

                HTML

                 <div id='content'>
                   <div class='price'>$100</div>
                   <div class='another'>something</div> 
                 </div>
                

                【讨论】:

                  【解决方案10】:

                  您需要通过父元素访问子元素...这是您的问题。我用 jquery DEMO 解决它

                  $(document).ready(function(){
                    var tem = $('#content').children('#price').text();
                      alert(tem);
                  });
                  

                  【讨论】:

                    猜你喜欢
                    • 2018-09-23
                    • 1970-01-01
                    • 2017-04-10
                    • 2021-12-20
                    • 1970-01-01
                    • 2018-08-31
                    • 2016-08-09
                    • 1970-01-01
                    • 1970-01-01
                    相关资源
                    最近更新 更多