Задать вопрос

Пример отправки POST через AJAX?

Приветствую!

Поделитесь нормальным примером скрипта для отправки POST с файлом через AJAX, пробовал вот так:

<form id="formModel" enctype="multipart/form-data">
                  <input type="text" name="title" required>
                  <input type="text" name="meta_t" required>
                  <input type="text" name="text"> 
                 <input type="file" name="imgurl">
                <button type="submit" name="submit" id="btnSubmit">Создать</button>
                </div>
             </form>


JS
$("#formModel").submit(function() {
    $.ajax({
        url: 'control',
        method: "POST",
        data: new FormData( this ),
        success: function(data) {
            $("#formModel input[name='title']").val(''),
            $("#formModel input[name='meta_t']").val(''),
            $("#btnSubmit").attr("value", "Отправлено")
        }
    });
    return false;
});


Не отправляет на прописанный в скрипте файл control, а отсылает в этот же, где находится форма
  • Вопрос задан
  • 181 просмотр
Подписаться 1 Средний 7 комментариев
Пригласить эксперта
Ответы на вопрос 3
@MaksPaverov
Расширение файлу поставь -_-
Ответ написан
@darknefrit
<form onsubmit="submitForm(event)" action="control" method="POST" id="formModel" name="nameformModel" enctype="multipart/form-data">
                  <input type="text" name="title" required>
                  <input type="text" name="meta_t" required>
                  <input type="text" name="text"> 
                 <input type="file" name="imgurl">
                <button type="submit" name="submit" id="btnSubmit">Создать</button>
                </div>
             </form>

function submitForm(event){
event.preventDefault();
event.stopPropagation();
let form = document.forms.nameformModel;
let url = form.action;
let data = new FormData(form )
var akaxOptions = { method: 'POST',               
               mode: 'cors',
               credentials: 'include',
               body:data 
              };

fetch(form.action,akaxOptions ).then(function(response){
 return response.json();
}).then(function(json){
form.reset();
form.submit.value= "Отправлено";
})
}
Ответ написан
@Wolfz Автор вопроса
Ао, А вот здесь нет опечатки?
var akaxOptions = { method: 'POST',               
               mode: 'cors',
               credentials: 'include',
               body:data 
              };

ajaxOptions
Ответ написан
Ваш ответ на вопрос

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

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