我想在不加載新的php頁面的情況下提交表單。我的表單包含一個文件上傳和textarea字段。基本上,數據可以像博客即大數據量需提交是否有jQuery-ajax表單提交的大小限制
我會通過一些教程jQuery的ajax的表單提交
- 沒有一個教程展示瞭如何上傳文件。任何人都可以幫助我這個和
- 由於使用get方法,是否有可以提交與jquery-ajax數據大小的限制。如果是,我該如何處理?
我想在不加載新的php頁面的情況下提交表單。我的表單包含一個文件上傳和textarea字段。基本上,數據可以像博客即大數據量需提交是否有jQuery-ajax表單提交的大小限制
我會通過一些教程jQuery的ajax的表單提交
如您所知,限制設置不是瀏覽器。 而且根據很多衆所周知的指令,例如在Apache中這個段落定義了參數LimitRequestBody。該參數可以取值從0字節到2 GB。在PHP中,還有一個叫做post_max_size的指令。指定POST請求的大小。
您可以使用iframe,因此您不必刷新當前頁面。
許多人直接去插件。但是你可以很容易地做到這一點,並具備AJAX請求的所有功能。
將表單提交給隱藏的iframe,該隱藏的iframe具有附加的加載事件處理程序,因此當提交表單時,您有一個實際包含服務器響應(加載後的iframe的HTML)的回調函數。
實施例:
<form action="..." method="post" encrypt="application/x-www-form-urlencoded" target="workFrame" >
<input type="file" name="file" />
<input type="submit" />
</form>
<iframe id="workFrame" src="about:blank" style="display:none;"></iframe>
和Javascript代碼是:
(function() {
$('form').on('submit', function() {
//check if the form submission is valid, if so just let it submit
//otherwise you could call `return false;` to stop the submission
});
$('#workFrame').on('load', function() {
//get the response from the server
var response = $(this).contents().find('body').html();
//you can now access the server response in the `response` variable
//this is the same as the success callback for a jQuery AJAX request
});
});