2017-10-31 3 views
2

私はこの質問を調査しました。ほとんどの答えは、一意のIDまたはクラス名を持つノードリストの最初の要素の値の取得に関係しているようです。大きなリストの要素の値を取得する

私はAdobe DTMを使用して、以下のサンプルコードでイベントを追跡しています。このように設定されたli要素でいっぱいのページを想像してみてください。

<li id="af3a2eb0-cfe9-11e5-b131-6fc0b40730a0" class="theater__active__3-QdV theater__theater__nmQh3 theaterTheater"> 
 
    <div class="theaterHead theater__header__2Skwj"> 
 
     <div class="theater__logo__2uovm"> 
 
     <img class="" src="image" alt="logo"> 
 
     </div> 
 
     <div class="theaterInfo theater__theaterInfo__2dTbj"> 
 
     <h3 class="theater__theaterName__1Pwxo">Arclight</h3> 
 
     <p class="theater__theaterAddress__16_be">10000 Wilshire Boulevard, Los Angeles, CA</p> 
 
     <span class="theater__distance__30qj2 theater__theaterAddress__16_be">4.4mi</span> 
 
     </div> 
 
    <div> 
 
    </div> 
 
    </div> 
 
</li>

私は、クリックがその親のdivの一つであるとき、「H3」要素の値を取得しようとしています。

は、これまでのところ私は、このデータ要素として設定している:

var myNodelist = document.querySelector(".theater__theaterName__1Pwxo"); 
 
var i; 
 
for (i = 0; i < myNodelist.length; i++) { 
 
    return myNodelist[i].value; 
 
}

しかし、それは実際にブランク値を返し、私はなぜわかりません! NOTE

%[email protected]% 

thisが参照する

+0

代わりに一緒にデータのビットをバンドルし、要素のクラスにそれらを妨害あなたはデータ - 属性を使用して残しておきたいかもしれない属性場所要素、スタイリング要素などのようなもののクラス属性。 – James

+0

@Jamesこれは本当に良いアイデアですが、私はそのページを構築しませんでした。感謝! –

答えて

1

あなたは要素のテキストが(イベントルールであなたの小道具やEVARに追加してください取得するには、クリックイベントに次の式を使用することができます現在のクリックされた要素へ。

・ホープ、このことができます。

+0

こんにちは@Zakariaありがとう、これは実際に表示するinnerTextを持っています。しかし、どの「タブ」をクリックしても、最初のテキストだけが表示されます。何らかのクリック条件を追加する必要がありますか? –

+0

コード内の他の場所でクリックイベントをアタッチしましたか? –

+0

clickイベントは、Adobe DTMを通じて、クラス名が "theaterHead theater__header__2Skwj"のすべてのdivにポイントされます。あ、はい。 –

関連する問題