1. 程式人生 > >jquery.form.js ajax提交上傳文件

jquery.form.js ajax提交上傳文件

ntc AC 失敗 再次 ctype head cal inpu 異步

項目中最近有用到表單提交,是帶有圖片上傳的表單錄入,需要ajax異步提交,網上找了好多例子都是只能提交上傳字段一個信息的,這裏整理一下。表單裏有普通文本信息字段也有圖片上傳字段。

1、jsp代碼--引入jquery和jquery.form.js
<script type="text/javascript" src="<%=basePath %>js/jquery-1.8.3.min.js"></script>
<script type="text/javascript" src="<%=basePath %>js/jquery.form.js"></script>

<!--form表單,異步提交一定使用submit按鈕,form配置如下-->

<form id="userForm" method="post" action="" enctype="multipart/form-data" class="bl-form bl-formhor fl">
<table>
    <tr>
<td class="Taa"><label for="enterpriseName">*企業名稱:</label></td>
<td class="Tbb"><input type="text" name="enterpriseName" id="enterpriseName" readOnly class="inp1"/></td>
</tr>
<tr>
<td class="Taa">身份證圖片:</td>
<td><a href="javascript:;" class="btn btn2 a_uplaod"><input type="file" name="identitypic" id="pic" onchange="javascript:setImagePreview();">上傳圖片</a></td>
</tr>
</table>
<input type="button" value="確認升級" class="mg btn btn2 d2-5" onclick="ajaxSubmitForm();"/>
<input type="button" value="清除" class=" btn btn2 d2-5" onclick="resetForm();"/>
</form>

2、javascript代碼

function ajaxSubmitForm() {
    var option = {
   url : ‘${pageContext.request.contextPath}/userController/upgradeUser_form‘,
   type : ‘POST‘,
   dataType : ‘json‘,
   headers : {"ClientCallMode" : "ajax"}, //添加請求頭部
   success : function(data) {
   if("success"==data.resultMessage){
   alert("個人用戶已成功升級為企業用戶!");
}
else{
alert("企業用戶升級失敗,請聯系管理員!");
return;
}
},
error: function(data) {
alert("企業用戶升級失敗,請聯系管理員!");
}
};
$("#userForm").ajaxSubmit(option);
return false; //最好返回false,因為如果按鈕類型是submit,則表單自己又會提交一次;返回false阻止表單再次提交
}

jquery.form.js ajax提交上傳文件