Подтвердить что ты не робот

Jquery submit form, а затем показать результаты в существующем div

У меня есть простая текстовая форма ввода, которую при отправке нужно получить php файл (передавая входы в файл), а затем взять результат (просто строку текста) и поместить его в div и вытереть, что div в поле зрения.

Вот что у меня есть сейчас:

<form id=create method=POST action=create.php>
<input type=text name=url>
<input type="submit" value="Create" /> 

<div id=created></div>

Мне нужны результаты create.php?url=INPUT, которые будут динамически загружаться в div, называемый created.

У меня есть форма jquery script, но я не смог заставить ее работать правильно. Но у меня есть библиотека, загруженная (файл).

4b9b3361

Ответ 1

Этот код должен это сделать. Вам не нужен плагин Form для чего-то простого:

$('#create').submit(function() { // catch the form submit event
    $.ajax({ // create an AJAX call...
        data: $(this).serialize(), // get the form data
        type: $(this).attr('method'), // GET or POST
        url: $(this).attr('action'), // the file to call
        success: function(response) { // on success..
            $('#created').html(response); // update the DIV
        }
    });
    return false; // cancel original event to prevent form submitting
});

Ответ 2

Это также работает для загрузки файлов

$(document).on("submit", "form", function(event)
{
    event.preventDefault();

    var url=$(this).attr("action");
    $.ajax({
        url: url,
        type: 'POST',
        dataType: "JSON",
        data: new FormData(this),
        processData: false,
        contentType: false,
        success: function (data, status)
        {
            $('#created').html(data); //content loads here

        },
        error: function (xhr, desc, err)
        {
            console.log("error");

        }
    });        

});

Ответ 3

Вы должны использовать AJAX для отправки формы, если вы не хотите обновлять страницу.

$('#create').submit(function () {
    $.post('create.php', $('#create').serialize(), function (data, textStatus) {
         $('#created').append(data);
    });
    return false;
});