0

API から返された検索結果ごとにテーブルに行を追加する jQuery 関数があります。各行には、クラス「js-run-apn-button」が指定されたリンク ボタンが含まれます。

リンクがクリックされると、関数 apnData を起動するはずですが、トリガーに失敗します。これは、dom が最初にロードされた後にリンク クラスが追加され、イベントがバインドに失敗したためだと確信しています。$document.ready() 関数ではなく、新しいクラスを作成する関数内にイベント ハンドラーを追加することで、この特定の問題を修正できますが、プログラムが複雑になります。したがって、これを回避する別の方法があるかどうか、そしてより広く、この問題に一般的に対処するための最良の方法は何かを考えています。

$(document).ready(function() {
    $('.js-run-apn-button').on('click', apnData);
    ...
}

function multipleResults(response) {
    $('.result-table > tbody').append('<tr><td><a class="button blueButton js-run-apn-button" href="#">Search APN</a></td></tr>');
    ...
}
4

2 に答える 2