jQuery.form.js插件不能解決連接超時(timeout)的原因分析及解決方法
jQuery.form.js是一個form插件,支持ajax表單提交和ajax文件上傳。
最近在使用jquery.form.js提交包含文件的表單時,碰到了一個問題:當碰上網(wǎng)速較慢時,而我們又設(shè)置了timeout時,例如:
var options = {
timeout: 3000 //限制請求的時間,當請求大于3秒后,跳出請求
}
我們的頁面會死在這里,貼上F12開發(fā)者工具返回的結(jié)果:

此時,我們并沒有處理錯誤的回調(diào)函數(shù),而百度出來的例子中也只有這兩個回調(diào)函數(shù):
beforeSubmit: showRequest, //提交前的回調(diào)函數(shù) success: showResponse, //提交后的回調(diào)函數(shù)
所以,我去官網(wǎng)查看API,官網(wǎng):http://malsup.com/jquery/form/#options-object,果然找到了處理錯誤的回調(diào)函數(shù):
error Callback function to be invoked upon error.
所以我的options是這么寫的:
var options = {
beforeSubmit: showRequest, //提交前的回調(diào)函數(shù)
success: showResponse, //提交后的成功的回調(diào)函數(shù)
error:showError, //提交后的錯誤的回調(diào)函數(shù)
timeout: 3000 //限制請求的時間,當請求大于3秒后,跳出請求
}
回調(diào)函數(shù)是這么寫的:
function showError(responseText, statusText){
if(statusText=='timeout'){
layer.msg("服務(wù)器繁忙,請稍后再試!", {icon: 5,time:1500});
return;
}
}
以上所述是小編給大家介紹的jQuery.form.js插件不能解決連接超時(timeout的原因分析及解決方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關(guān)文章
jQuery綁定事件監(jiān)聽bind和移除事件監(jiān)聽unbind用法實例詳解
這篇文章主要介紹了jQuery綁定事件監(jiān)聽bind和移除事件監(jiān)聽unbind用法,結(jié)合實例形式詳細分析了綁定事件監(jiān)聽bind和移除事件監(jiān)聽unbind的具體使用技巧與相關(guān)注意事項,需要的朋友可以參考下2016-01-01
分享精心挑選的12款優(yōu)秀jQuery Ajax分頁插件和教程
在這篇文章中,我為大家收集了12個基于 jQuery 框架的 Ajax 分頁插件,這些插件都提供了詳細的使用教程和演示2012-08-08
jQuery實現(xiàn)發(fā)送驗證碼并60秒倒計時功能
這篇文章主要介紹了jQuery實現(xiàn)發(fā)送驗證碼并60秒倒計時功能,非常不錯,代碼簡單易懂,需要的朋友參考下吧2016-11-11

