Ajax. return false\true

419
24 ноября 2016, 10:34

Подскажите пожалуйста. Есть вот такой запрос

     jQuery.ajax({ 
          url: 'event/add_event', 
          type: 'POST', 
          data: formData, 
          contentType: false, 
          processData: false, 
          beforeSend: function () { 
            jQuery('#ajaxmessage').html('<img src="<?php echo $this->config->item('img_folder');?>wait.gif"/>'); 
          }, 
          success: function(msg) { 
          if (msg === "ok") 
            jQuery('#ajaxmessage').html('<div class="alert alert-success text-center">Мероприятие добавлено</div>'); 
          else 
            jQuery('#ajaxmessage').html('<div class="alert alert-danger">' + msg + '</div>'); 
          } 
        }); 
        return false; 
    });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>

В контроллере идет обработка и он возвращает true/false . как красиво обработать во вьюшке это ? а то сейчас echo "ok"; транслировать ну как то очень костыльно. Спасибо

Answer 1

Отдавайте с сервера JSON-объект:

{
   "status": true
}

А при ошибке что-нибудь такое:

{
   "status": false,
   "reason": "Для добавления мероприятия вы должны быть авторизованы"
}

Также можно использовать коды состояния HTTP. При успешном ответе отдавайте 2** код ответа, например, 200 (OK). Таким образом выполнится событие AJAX success, а при ошибке - 4**-5** коды. В таком случае сработает событие AJAX error.

READ ALSO
JavaScript Загрузка файлов Blob

JavaScript Загрузка файлов Blob

Доброе время суток, загрузить файл по уже зарание указанному пути

558
angular js Filter for ng repeat [закрыто]

angular js Filter for ng repeat [закрыто]

I two have scopes with date like this:

377
main.js:35 Uncaught SyntaxError: Unexpected token +=

main.js:35 Uncaught SyntaxError: Unexpected token +=

Очевидно, что данный ситаксис

483