отправка формы Django с использованием JavaScript - PullRequest
2 голосов
/ 24 мая 2011

хорошо, так что используйте этот фрагмент кода -

    <form id="myform" name="myform" action="." method="post">
        <a href="javascript: document.forms['myform'].submit();" name="myform">Submit
        </a>
    </form>    

Я отправляю форму, используя href и некоторые javascript на мой сервер django на сервере я проверяю почтовый запрос, используя следующий код -

    if 'myform' in request.POST:
        '''handle the form submition'''
        return True
    return False

это возвращает ложь. есть идеи почему?

Ответы [ 3 ]

3 голосов
/ 25 мая 2011

вот решение, которое я использовал для решения своей проблемы - (большое спасибо Фоско и Адам!)

    <form id="my_form" action="." method="post">
        <a href="#" onclick="document.forms['my_form'].submit();">Call Form</a>
        <input type="checkbox" name="call_form" checked style="visibility:hidden"><br>
        <input type="submit" value="create form" style="visibility:hidden" />
    </form>`
1 голос
/ 24 мая 2011

Я полагаю, "использование ссылки" означает, что вы нажимаете на ссылку программно? Ссылки всегда отправляют GET-запросы, поэтому они терпят неудачу. Вы можете отправить всю форму с помощью JS, используя document.forms.myform.submit();, и она отправит ее с помощью POST, поскольку этот метод указан в форме.

0 голосов
/ 24 мая 2011

Есть ли поля ввода в этой форме?Вы должны проверить это, а не имя формы.Сама форма ничего не значит, так какие данные публикуются?то есть поле ввода текста с именем someData.if 'someData' in request.POST:

...