1.纯form提交
只要将form的enctype设置为multipart/form-data即可
2.ajax form提交
这个时候如果不上传文件,然后再去提交表单,就会报argument mismatch,这是因为在struts用PropertyUtilsBean对页面组件中的数据进行form封装的时候出现了类型转换问题,无法将<html:file/>中的空值转换成FormFile类型。
解决方法是提交表单的方法中将<html:file/>的name属性换掉,以此避免strut form的转换错误。
示例:
1 if($("#picFile").val()==""){
2 $("#picFile").attr("name","nullFile");
3 }
4 var url = "<c:url value='/user/user/personal.ao?method=modifyBasic'/>";
5 //$("#userForm").submit();
6 //$.formSubmit("userForm",url);
7 $.ajaxFormSubmit("userForm",url,{callback:function(data){
8 //解析json对象
9 var json = eval("("+data+")");
10 if(json.status=="success"){
11 detailShow();
12 loadBasic();
13 $("#divDialog").html("修改个人基本信息成功!<br><input type='button' value='确定' onclick=\"$('#divDialog').close()\">");
14 $("#divDialog").dialog({title:"消息窗口"});
15 }
16 }});
posted on 2009-06-11 11:00
teok 阅读(519)
评论(0) 编辑 收藏