2

次の構造を持つ:

<td class="padding_right padding_left">Neighborhood</td>
<td>
    <div id="neighborhoods_region">    
    <select class="inputs_form_data" id="neighborhood_id2" name="neighborhood_id2">
        <option value=""></option>
        <option value=""></option>
    </select>
    </div>
</td>
<td width="10%"><a class='delete-region'>remover</a></td>​

removeリンクがクリックされたときに、選択したIDのID番号を取得しようとしています。この場合、「neighborhood_id2」から数字の 2 を取得する必要があります。

しかし、最初に完全なIDを取得しようとしています。neighborhood_id2次のコードを使用します。

$(document.body).on('click','a.delete-region', function () {
    alert($(this).closest('select').attr("id"));
});

しかし、これは私を返しますundefined

注:id数値は動的フォームでオンザフライで生成されます。だから私は持っているかもしれませんneighborhood_id3

4

1 に答える 1

7

which を使用し.closest('tr')て を取得してtrから、 を見つけてくださいselect

alert($(this).closest('tr').find('select').attr("id"));

アンドレアスが指摘したように..使用(.on委任されたイベント)/.delegate

于 2012-09-19T20:16:23.173 に答える