无法在DOM中获取h1元素的text / innerHTML

时间:2013-03-06 12:36:41

标签: jquery dom

我试图获取两个h1元素的文本,但我的方法一直在返回" Undefined"执行时这是第一个h1元素

<div id="product-details" class="floatLeft">
  <h1 class="productTitle">Krista Sued Coat</h1>
</div>

我获取此内容的代码

var productName = $('#window').contents().find('h1.productTitle').innerHTML;

第二个h1元素

<div class="product-title-wrap">
  <h1 class="product-title font-alpha">
    <span itemprop="name">



            Bliss Firm, Baby, Firm!


        </span>
  </h1>
</div>

我获取此内容的代码

var brandName = $('#window').contents().find('.product-title font-alpha span').innerHTML;

这两个返回&#34;未定义&#34;每一次。我已经花了好几个小时来解决这个问题但没有任何作用。如果有人能提供答案我真的很感激,如果你还能解释你的方法是如何运作的,因为我还是jquery的新手并且想要学到很多东西。

谢谢!

2 个答案:

答案 0 :(得分:5)

您正在使用jQuery对象而非DOM对象。 innerHTML是DOM对象的属性,你试图将它与jQuery对象一起使用。

更改

var productName = $('#window').contents().find('h1.productTitle').innerHTML;

var productName = $('#window').contents().find('h1.productTitle')[0].innerHTML; //With javascript

var productName = $('#window').contents().find('h1.productTitle').html(); //With jQuery

答案 1 :(得分:5)

你可以使用jQuery的html方法:

var productName = $('#window').contents().find('h1.productTitle').html()