jQuery ready方法和加载函数

时间:2019-06-05 09:51:33

标签: javascript jquery html

我试图在ready()方法内部访问DOM。我知道ready()函数在DOM加载后运行,就我而言,当我尝试访问元素时,Jquery返回未定义。

然后我尝试嵌套ready()函数和$(window).on(“ load”,function()),但是当我尝试访问该元素时,有时它返回未定义。有时它返回我期望的订单ID,但有时它随机返回undefined。

$(document).ready(function() {
  $(window).on("load", function() {
    var order_id = $("section.orderConfirmation-section").find("strong").html();
    console.log("order id: ", order_id)
  });
});

当我在控制台上记录订单ID时,有时会返回数字“ 3123”,这是订单ID,但有时它返回的是undefined。我不明白为什么会这样,因为在加载整个窗口之后,我试图访问DOM。任何帮助将不胜感激,谢谢。

1 个答案:

答案 0 :(得分:-1)

这是什么section.orderConfirmation-section,我不认为这是HTML标记,我认为这是类或ID,因此请使用.#来跟踪此属性,您也可以不需要在ready函数中使用加载窗口。

谢谢

<section>
<div class="orderConfirmation-section">
   <strong>23</strong> <!-- i want to select this div-->
</div>
</section>

$(document).ready(function() {
    var order_id = $("section .orderConfirmation-section").find("strong").html();
    console.log("order id: ", order_id);
});

我得到这样的身份证。