jQuery Submit Refreshing Page

Следующий код предназначен для выполнения чисто ajax-запроса POST, вместо этого он, похоже, выполняет POST через ajax, а затем браузер переходит к ответу .

HTML ...

<div id="bin">
    <form class="add" method="post" action="/bin/add/">
        <p>I'm interested! Save for later.</p>
        <input type="hidden" name="product_id" value="23423">
        <input type="submit" value="Save">
    </form> 
    <form style="display:none;" class="remove" method="post" action="/bin/remove/">
        <p>I changed my mind--I'm not interested.</p>
        <input type="hidden" name="product_id" value="23423">
        <input type="submit" value="Unsave">
    </form>
</div>

jQuery ...

$('#bin form').submit(function() {
                $.post($(this).attr('action'),{
                    success: function(data) { $(this).hide().siblings('form').show() },
                    data: $(this).serialize()

                });
                return false;
            })

Насколько я понимаю, строка return false; должна означать, что, несмотря ни на что, любые вызовы submit функция или нажимает кнопку "Отправить" или нажатие клавиши Enter означает, что моя функция будет выполнена, и браузер будет , а не , перейдет к / bin / add или / bin / remove . Но по какой-то причине браузер меняет страницы.

Есть идеи, что я здесь делаю не так? Спасибо.

6
задан Chris W. 24 February 2011 в 01:45
поделиться