Как в dle отправить данные через javascript post запрос?

Подрубаю liveeditor https://vitalets.github.io/x-editable/docs.html на сайт, пока тестирую в userinfo.tpl

есть поле, в нашем случае username
Полное имя: {fullname}

как через javascript post запросом сохранить данные. Желательно без обновления страницы.

Демо и код codepen.io/litemax/pen/vLgGpm
  • Вопрос задан
  • 441 просмотр
Решения вопроса 1
hummingbird
@hummingbird
Отправляешь AJAX все в PHP файл, а там уже обработку и запись в БД производишь.

Вот пример из официальной документации:
$('#save-btn').click(function() {
   $('.myeditable').editable('submit', { 
       url: '/newuser', 
       ajaxOptions: {
           dataType: 'json' //assuming json response
       },           
       success: function(data, config) {
           if(data && data.id) {  //record created, response like {"id": 2}
               //set pk
               $(this).editable('option', 'pk', data.id);
               //remove unsaved class
               $(this).removeClass('editable-unsaved');
               //show messages
               var msg = 'New user created! Now editables submit individually.';
               $('#msg').addClass('alert-success').removeClass('alert-error').html(msg).show();
               $('#save-btn').hide(); 
               $(this).off('save.newuser');                     
           } else if(data && data.errors){ 
               //server-side validation error, response like {"errors": {"username": "username already exist"} }
               config.error.call(this, data.errors);
           }               
       },
       error: function(errors) {
           var msg = '';
           if(errors && errors.responseText) { //ajax error, errors = xhr object
               msg = errors.responseText;
           } else { //validation error (client-side or server-side)
               $.each(errors, function(k, v) { msg += k+": "+v+"<br>"; });
           } 
           $('#msg').removeClass('alert-success').addClass('alert-error').html(msg).show();
       }
   });
});


В самом начале фигурирует url и тип передаваемой информации.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы