2016-05-04 31 views
0

実行時にjavascriptファイルによって生成されるハイパーリンクからonClick値を取得しようとしています。動的に生成されたボタンからOnClick値を取得する

JQueryを使用して値を取得すると、使用されているハイパーリンクに焦点を合わせることができます。

これは別の話ですが、私たちの問題はリンク(アンカー)にIDがないため、私はそれを拾うことができません。

javascriptファイルをベンダーファイルとして編集することはできません。どんなゲットも大歓迎です。あなたが生成された要素が含まれている要素にあなたのイベントリスナーを追加するために、イベントの代表団(jQueryvanilla JavaScript)を使用することができるはず

おかげで、 マット

+0

'$( 'DOM内の親要素')上の( 'クリック'、 '[のhref]'、...)'、。使用されているリンクに「焦点を合わせる」とはどういう意味ですか? **編集**:明確なセレクター。 – noahnu

+0

そのボタンについて他のものを探してみてください。あなたがidを持っていなければ、おそらくあなたは親のidを持っています。たぶんボタンには一意のクラス名があるかもしれませんし、常にDOMのクラスの最初のものです。 –

+0

残念ながら、いいえ、私はそれを難し​​くする名前やIDがありません。おそらくそれを得るためにリンクの内容を検索する方法はありますか? – Matt

答えて

0

。ここで

は不自然な例です:

// presumably the elements live in some distinct container 
$('.vendor-div').on('click', 'a', function() { 
    console.log('hullo!'); 
}); 

setTimeout(function() { 
    var a = document.createElement('a'); 
    a.setAttribute('href', '#'); 
    a.textContent = "click me!"; 
    $('.vendor-div').append(a); 
}, 1000); 

Fiddle

+0

申し訳ありません私はフォローしていません。あなたは詳細を教えていただけますか? – Matt

+0

動的に生成された要素が特定のラッパー要素に追加される場合は、使用イベントの委任を付けてそれにリスナーをアタッチすることができます。そうでない場合は、ページ全体に追加されているので、ハンドラ本体のイベントデリゲーション 'body'を使用し、リンクの内容などを使用してクリックをフィルタすることができます。それが後者なら、私はそれに応じて私の答えを更新することができます。 – pdoherty926

関連する問題