ajaxSubmit и ответ - PullRequest
       1

ajaxSubmit и ответ

0 голосов
/ 15 июля 2011

Я пытаюсь работать с событием ajaxSubmit, поэтому форма заменяется результатом. Это может быть страница подтверждения или ошибки в форме. Эта форма работает на отдельной странице, поэтому я работаю над тем, чтобы поместить ее в модал ajax.

<div id="biography">
    <form method="post" action="/{{ onesheet.url }}/contact/" id="contact-form" class="full">
        {% csrf_token %}
        <ul>
        {{ form.as_ul }}
        </ul>
        <input type="submit" value="Send Email">
    </form>
</div>

И JS

<script type="text/javascript">
    $('#contact-form').submit(function() { 
        var options = { 
            target:        '#biography',   // target element(s) to be updated with server response 
            beforeSubmit:  showRequest,  // pre-submit callback 
            success:       showResponse  // post-submit callback 
        };
        // submit the form 
        $(this).ajaxSubmit(options);
        // return false to prevent normal browser submit and page navigation 
        return false; 
    });
</script>

Но это не загружает ответ в цель. он открывает его на всей странице.

Есть идеи?

1 Ответ

1 голос
/ 30 мая 2012

Вам необходимо позвонить e.preventDefault(), чтобы предотвратить нормальную отправку:

<script type="text/javascript">
$('#contact-form').submit(function(e) { 
    e.preventDefault();
    var options = { 
        target:        '#biography',   // target element(s) to be updated with server response 
        beforeSubmit:  showRequest,  // pre-submit callback 
        success:       showResponse  // post-submit callback 
    };
    // submit the form 
    $(this).ajaxSubmit(options);
    // return false to prevent normal browser submit and page navigation 
    return false; 
});
</script>
...