jquery提交表单,然后在现有的div中显示结果

我有一个简单的文本input表单,当提交时,需要获取一个php文件(将input传递给文件),然后将结果(只是一行文本),并将其放在一个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的结果,被dynamic加载到被调用的div

我有jQuery的forms脚本,但我一直无法得到它的工作权利。 但是我确实已经加载了这个库(文件)。

这段代码应该这样做。 你不需要这样简单的表单插件:

 $('#create').submit(function() { // catch the form's 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 }); 

这也适用于file upload

 $(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"); } }); }); 

如果您不希望页面被刷新,则必须使用AJAX发布表单。

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