0

私はテーブルを持っていて、2つのタグがあります。非表示のボタンをクリックすると、$().empty() を使用して消えます。しかし、復元方法がわかりません。
$().append や新しいデータを追加するようなものは使いたくありません。復元したい。
どうやってやるの。ありがとう

<script type="text/javascript">

$(function(){
    $('#hidden').click(function(){
        $('.hidden').empty();
    });
    $('#restore').click(function(){
        // restore defaults
    });
});
</script>
<table>
    <tr class="hidden">
        <td>a</td>
        <td>b</td>
    </tr>
    <tr>
        <td>c</td>
        <td>d</td>
    </tr>
</table>
<input type = "button" id ='hidden' value="hidden"/>
<input type = "button" id ='restore' value="restore"/>
4

5 に答える 5

5

空にする代わりに、アイテムを非表示にして表示するだけです。

$('#hidden').click(function(){
    $('.hidden').hide();
});
$('#restore').click(function(){
    $('.hidden').show();
});
于 2013-03-28T11:06:10.290 に答える
1

hideandだけを使用しない理由show:

$(function(){
    $('#hidden').click(function(){
        $('.hidden').hide();
    });
    $('#restore').click(function(){
        // restore defaults
        $('.hidden').show();
    });
});
于 2013-03-28T11:07:45.297 に答える
1

単に非表示にしたくない場合は (既に提案されているように)、オブジェクトに保存できます。

$(function(){
    var data;
    $('#hidden').click(function(){
        data = $('.hidden').html();
        $('.hidden').empty();
    });
    $('#restore').click(function(){
        $('.hidden').html(data);
    });
});
于 2013-03-28T11:07:59.543 に答える
0

.empty() を呼び出した後にコンテンツを復元する方法はありません。別の関数があります: .detach() は、選択した要素を DOM から切り離しますが、完全には消去しません。要素をデタッチした後、.append() または .prepend() で再度追加できます。

于 2013-03-28T11:17:19.920 に答える
0

empty() は dom からコンテンツを削除するため、永久に失われます。コンテンツを非表示にするだけの場合は、使用する必要があります

$.hide() 

その後

$.show()
于 2013-03-28T11:08:49.330 に答える