0

aspxページにオートコンプリートボックスがあり、リストからデータを選択すると、次のように値がdivにバインドされます。

 var data = "<div class='close'><table><tr><td rowspan='4' width='50px;'>
      <img src='" + studentItem.Photo + "' Width='48' Height='48'  /></td><td>" 
      + studentItem.Name + " ( <span class='stuId'>" + studentItem.StudentId 
      + "</span> )</td><td align='right' ><div class='close16'/></td></tr>
      <tr><td><table cellpadding='0' cellspacing='0'><tr><td>" 
      + studentItem.Email + "</td><td>&nbsp;|&nbsp;</td><td>" 
      + studentItem.Mobile + "</td></tr></table></td></tr></table></td></tr>
      </table></div>";

データを次のようなdivにバインドしています

$("#students").append(data);

そして私は次のような粒子データを削除することができます

        $(document).on('click', '.close16', function () {
            $(this).parentsUntil('#students').remove();
        });

ここで私がやりたいのは、delete(close16)をクリックした場合、対応するstudentId(stuIdつまりスパンにある)を取得する必要があることです。

alert($("stuId").text());のクリックイベント内で試してみclose16ましたが、何も表示されません。よろしくお願いします。

4

1 に答える 1

2
$(document).on('click', '.close16', function () {
    alert($(this).closest('table').find('.stuId').text()); /* span text */
    ...
    $(this).parentsUntil('#students').remove();
});
于 2012-05-25T12:00:21.433 に答える