2

「クリック」ハンドラーによってトリガーされる削除イメージがあります。要素パラメーターを、イベントをトリガーした関数 (削除イメージ) に渡しています。

type="text"クリックされた削除画像のテーブル行の入力を見つける方法はありますか?

ここに私が取り組んでいるコードがあります:

        A4J.AJAX.AddListener({
            onafterajax: function(req,evt,data) {  

                j$('[id$=deleteImage]').on('click', function(elem) {
                    console.log('the delete button was clicked');
                    console.log('************** before ' + localStorage.activeButtons);
                    var activeArray  = localStorage.activeButtons.split(',');
                    var idx = activeArray.indexOf('account');
                    if (idx > -1) activeArray.splice(idx, 1);
                    localStorage.activeButtons = activeArray.join(',');
                    console.log('************** after ' + localStorage.activeButtons);
                });

                var lastRow = j$('table[id$=participantTable] tbody tr:last');                 
                var active = localStorage.activeButtons.split(',');

                var dataRows = j$('tr.dataRow');
                dataRows.each(function(index, elem) {
                    updateImages(elem, active[index]);
                });
            }
        });

画像の削除がクリックされた表の行を見つけてinput[type="text"]、その入力フィールドの ID を取得し、ID に次の値のいずれかが含まれているかどうかを確認する必要がありますcontact, user or account。入力 ID に含まれる値を indexOf() メソッドに渡す必要があります。

助けてくれてありがとう。

4

2 に答える 2

4

これを試して:

j$(this).closest('tr').find('input[type="text"]:visible');

クリックハンドラ内

j$('[id$=deleteImage]').on('click', function(elem) {

jQuery .closest() -要素自体をテストし、DOM ツリー内のその祖先をたどって、セレクターに一致する最初の要素を取得します。

于 2013-09-24T20:34:51.483 に答える