0

これが私がふりをする正しいコードであるかどうかを確認していただけますか? ボタンをクリックしてレコードを削除し、以前と同じページに戻りたいだけです。次のサンプルは IE9 と Chrome で動作しますが、IE8 では動作しません。

DIV (#page_content) 内に行を含むテーブルがあります。各行の最後に、そのレコードを削除できるボタンがあります。ボタンのコードは次のとおりです。

<a class="delete" href="pages/roomwizard/roomwizard_delete.asp?id=<%=Rs("id")%>"><img src="images/delete.png" title="Delete record"/></a>

削除機能は次のとおりです。

$.ajaxSetup({ cache: false }); // it does the job!!!

$('#page_content .delete').click(function (e) {

    e.preventDefault();

    var url_delete = $(this).attr('href');

    $.post(url_delete);

    $('#content').load(url_back); // main div, with #page_content inside

});

私が言ったように、IE9 と Chrome では動作しています。これが正しい方法かどうかはわかりません。IE8 では、ボタンをクリックしても機能しますが、空白のページが開くか、同じページにとどまります (preventDefault を使用)。

4

1 に答える 1

0

「load」メソッドの後にセミコロンがないことを除けば、デフォルトの動作を防ぐだけでなく、false を返すこともできます。このようなもの:

$('#page_content .delete').click(function (e) {    
    var url_delete = $(this).attr('href');

    $.post(url_delete, function () {
        $('#content').load(url_back); // main div, with #page_content inside
    });

    e.preventDefault();
    return false;    
});
于 2013-10-17T10:53:22.280 に答える