Как построить систему комментариев Ajax? - PullRequest
2 голосов
/ 03 августа 2010

Я хочу ненадолго поработать с jQuery и Ajax.

Сначала я хочу создать только одно поле ввода, введите свой комментарий, а затем комментарий появится ниже.Нет обновлений страницы.Как я могу это сделать?

Ответы [ 3 ]

2 голосов
/ 03 августа 2010

Основная идея заключается в том, что у вас будет клиентская страница с текстовой областью или вводом. Прикрепите .click к кнопке отправки, и .click выполнит вызов сценария на стороне сервера через .ajax.

Клиентская сторона:

<script type="text/javascript">
    $(document).ready(
    $('#submit').click({
       $.ajax({
                 type=POST,
                 data: "comment="+$("#comments").val(),
                 dataType: json,
                 url: 'somePage.php',
                 success: function(data) {
                     if(data.error){
                         alert("server reported error"); 
                     }else{

                         $('#postedComments').append(data);
                     }
                 }
               });


    });


});
</script>
<div id="postedComments></div>
<textarea id="comments"></textarea>
<input type="submit" id="submit" value="Post Comment" />

Сторона сервера:

<?php
   if(isset($_POST['comments'])){
        //perform Database insert of value $_POST['comments']
        if(<database error>){
            echo json_encode(array('error'=>'-1'));
        }else{
            echo json_encode(array('success'=>'1'));
        }
   }
?>

Обычно, когда клиент нажимает кнопку «Отправить», .ajax отправляет «комментарии» в сценарий на стороне сервера. Затем сценарий обрабатывает запрос и сообщает об ошибке или успехе кодирования json, что позволяет определить, что произошло с вызовом сервера в случае успешного вызова ajax. Успех в ajax не является успехом, он просто указывает, что сервер ответил обратно, поэтому вы можете закодировать некоторое сообщение для отправки обратно клиентскому сценарию, чтобы определить, ответил ли сервер сообщением об ошибке или успехом.

0 голосов
/ 03 августа 2010

Я создал систему комментариев ajax на jQuery, аналогичную WordPress. Все действия по созданию / удалению работают на ajax.

Я сделал это вручную, выполнив операции $ .post () для создания комментариев и $ .get () для удаления комментариев.

0 голосов
/ 03 августа 2010

Вы должны опубликовать содержимое поля ввода на сервере и добавить его к комментариям при получении сообщения об успешном завершении работы с сервера.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...