0

インデックス値をもう一度確認したいのですが、私のコードでは一度しか確認できません。

$(function() {
    $('.tree').on("click", 'a',function(e) {
        var top = $(this).closest('tr').index()
        var cont = $(this).closest('tr').html()
      //  alert(cont)
        if ( top === 1) {
            alert('it is top')
            return false
            top = $(this).index()
        } else {
            $(this).closest('tr').empty()
            $('.second').before('<tr class="tree">'+ cont + '</tr>')
            top = $(this).index()
        }
    })
})

そして、コードを jsfiddle に置きました: http://jsfiddle.net/Jackyhua/gjypb/ たぶん、それを機能させるには「for」が必要です。

4

2 に答える 2

0

これを使って:

フィドル

$(function() {
        $('table').on("click", '.tree a',function(e) {
            var top = $(this).closest('tr').index()
            var cont = $(this).closest('tr').html()
          //  alert(cont)
            console.log(top);
            if ( top === 1) {
                alert('it is top')
                return false
            } else {
                $(this).closest('tr').empty()
                $('.second').before('<tr class="tree">'+ cont + '</tr>')
            }
        })
})

tr問題は、 dom の後に削除および追加していることです。変更されていない要素を使用することで、( を使用して.on()) 再度ターゲットにすることができます.tree

于 2013-07-30T06:03:19.480 に答える