0
0 комментариев

Здравствуйте. Хочу узнать ответ на свой вопрос есть view которое отвечает за прием от ajax данных введенных в форму комментариев. Как сделать добавление комментариев на страницу без ее перезагрузки. Не очень силен в ajax и jquery поэтому очень прошу помочь примерами с кодом. Благодарю заранее за помощь

views.py
def comment_create(request):
    if request.method == 'POST' and request.is_ajax():
        c = Comments(name=request.POST.get('name', '')[:50],
                 email=request.POST.get('email', '')[:150],
                 web_site=request.POST.get('web_site', '')[:150],
                 comment=request.POST.get('comment', ''),
                 blog_id=request.POST.get('blog', '')
                 )
        c.save()
 
        return HttpResponse('ok')
   else:
        return HttpResponse('bad')
 
 
 
sendform.js
 
jQuery(document).ready(function($) {
$('#submit').click(function () {
    //
    var name = $('input[name=name]');
    var email = $('input[name=email]');
    var web_site = $('input[name=web_site]');
    var comment = $('textarea[name=comment]');
    var blog = $('p#pk').data('item');
    var reply = $('p#reply').data('item');
    //
    var error = '';
    //Проверка введена ли информация в поля формы
    if ((name.val() == '') || (email.val() == '')) {
        error = 'Вы не ввели имя и e-mail';
        if (name.val() == '' && email.val() != '') {
            error = 'Вы не ввели имя'
        }
        if (name.val() != '' && email.val() == '') {
            error = 'Вы не ввели e-mail'
        }
        alert(error)
    };
    if ((comment.val() == '')){
        error = 'Вы не ввели комментарий'
        alert(error)
    };
    //if ((blog.val() != '')){
        //error = 'Pk не отправлено'
       // alert(blog.val())
    //}
// Если поля заполнены, отправляем их значения
    if (!error) {
        $.ajax({
            url: '/add_comment/',
            type: 'POST',
            datatype: 'html',
            data: {'name': name.val(), 'email': email.val(), 'web_site':     web_site.val(), 'comment': comment.val(), 'blog': blog},
            error: function () {
                alert('Ошибка получения запроса')
            },
            success: function (data) {
               **ЧТО ПИСАТЬ ЗДЕСЬ ЧТОБЫ ПОСЛЕ ОТПРАВКИ ФОРМЫ
               ДАННЫЕ КОТОРЫЕ БЫЛИ ВВЕДЕНЫ В ФОРМУ КОМЕНТАРИЕВ
               БЕЗ ПЕРЕЗАГРУЗКИ СТРАНИЦЫ ОТОБРАЗИЛИСЬ В ДОБАВЛЕННЫХ
               КОММЕНТАРИЯХ**
 
 
 
 
            }
 
 
 
        });
    }


Добавить комментарий