代码之家  ›  专栏  ›  技术社区  ›  Hamza Haider

Jquery返回的对象不是选择器元素[重复]

  •  0
  • Hamza Haider  · 技术社区  · 9 年前

    我有这样的html

    <input id="paymentNumber" type="text" class="form-control input-sm bot-buffer" placeholder="Payment Number">
    

    但是当我尝试在jquery中获取html标记时,就像这样 $('#paymentNumber') 它返回的是jquery对象,而不是该特定id的html标记。 但是,尽管我可以得到这样的html标记 $('#paymentNumber')[0]

    这个问题在今天之前从未出现过,我总是得到这样的html标记,但我的问题是为什么它要使每个html元素都成为jquery对象。

    是jquery中的一些更新,还是控制台中的更新?

    2 回复  |  直到 9 年前
        1
  •  4
  •   WEBjuju Douglas Harris    9 年前

    只是一个注释,但是如果您想要实际的HTML标记名,您需要:

    $('#my_element').prop('tagName');
    

    要获得单个包装对象,您可以像以前一样使用数组访问

    $('.many_elements')[0];
    

    或者您可以获得第一个元素:

    $('.many_elements').first();
    

    希望这有助于清理。

        2
  •  0
  •   alexc    9 年前

    要获得id的html,只需在末尾添加.html(),如下所示;

    // console.log($('#paymentNumber'))
    console.log($('#paymentNumber').html())
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    <input id="paymentNumber" type="text" class="form-control input-sm bot-buffer" placeholder="Payment Number">

    $('#paymentNumber') 将返回一个包含大量有关div信息的对象