2

以下の関数を使用して、以下に示す HTML のブロックから抽出しようとしています (引用符は返された値に含まれていますが、それが重要かどうかはわかりません) "Demonstrates the basics of using the Content section of App Cloud Studio" という文字列を抽出しようとしています。

<div class="field-item odd">コード行に示されているように、最初のものを使用して必要な文字列を取得できると考えています

var displayDescription = $(fullDescription).find( "#field-item odd" ).html();

ただし、これは常に null を返します。(Chrome 開発者ツールを使用して、fullDescription が適切に設定されていることを確認できます。)

どんな助けでも大歓迎です。

コード:

function onGetDataSuccess( data ) {
  for (var i = 0; i < data.length; i++) {
    var thisItem = data[i];
    var isVideo = jQuery.contains( thisItem.link, "/training-videos/" );
    if ( isVideo ){
      var fullDescription = thisItem.description;
      var displayDescription = $(fullDescription).find( "#field-item odd" ).html();
    }
  }
}

HTML:

<p>testing</p>
<div class="field field-type-text field-field-video-short-desc">
      <div class="field-label">Short Description:&nbsp;</div>
    <div class="field-items">
        <div class="field-item odd">
                Demonstrates the basics of using the Content section of App Cloud Studio        
        </div>
    </div>
</div>
<div class="field field-type-text field-field-video-id">
      <div class="field-label">Video ID:&nbsp;</div>
    <div class="field-items">
            <div class="field-item odd">
                    1251462871001        
            </div>
    </div>
</div>
4

1 に答える 1

3

間違ったセレクターを一緒に使用しています。field-item はクラスで、odd もクラスです。以下を使用する必要があります。

$(fullDescription).find( ".field-item.odd" ).html()

jQuery セレクターは、ほとんどのユース ケースで CSS セレクターと同じです。

于 2012-11-19T22:13:24.683 に答える