结合struts2与json ajax上传文件

elveny 2008-10-16 10:52:32
本人在做一个Ajax上传图片的时候遇到些问题,希望达人们给与帮助。

//用于ajax的JavaScript
function uploadFile(){
//请求地址
var url = "/communal/uploadPic.action";
var params = Form.Element.serialize('upload');
//创建Ajax.Request对象,对应于发送请求
var myAjax = new Ajax.Request(url,{ //请求方式:POST method:'post', //请求参数 parameters:params, //指定回调函数 onComplete: processResponseName, //是否异步发送请求 asynchronous:true }); }
function processResponseName(request)
{
var action = request.responseText.parseJSON();
var picUrl = action.uploadFileName;
$("imgpath").value=picUrl;
}
<form id="picForm" name="picForm" method="post" enctype="multipart/form-data" onSubmit="uploadFile();">本地上传: 
<input type="file" id="upload" name="upload" style="border: 1px solid #7e9eb7; width: 180px;"><input type="submit" value="上传"></form>
如果params 发送的是普通input,那么Ajax就会很正常,但是如果params 发送的是文件域,就会出问题,问题如下:
这是个Js问题,,
Line:1542
Char:5
Code:0
Error:缺少对象
...全文
1960 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
ldjiaojiao 2011-07-29
  • 打赏
  • 举报
回复
写的太简单了吧,有没有复杂点的
zrjzyp 2009-05-14
  • 打赏
  • 举报
回复
没看明白
qinde025 2008-12-01
  • 打赏
  • 举报
回复
而且返回值类型还不能为json
qinde025 2008-12-01
  • 打赏
  • 举报
回复
文件上传是不能用异步的
elveny 2008-10-28
  • 打赏
  • 举报
回复
哎,结贴,没答案,,留给大家努力吧,,
以梦为马 2008-10-19
  • 打赏
  • 举报
回复
回帖是一种美德!
顶顶。
tiyuzhongxin789 2008-10-16
  • 打赏
  • 举报
回复
那你就用文本框不就行了么
blackboy_my 2008-10-16
  • 打赏
  • 举报
回复
那你就用文本框不就行了么,你上传图片你咋能用本件域呢?
db_30 2008-10-16
  • 打赏
  • 举报
回复
对上传文件应用文件域
elveny 2008-10-16
  • 打赏
  • 举报
回复
上传图片能用文本框吗?
图片也是个文件,当然用文件域了<input type="file" name="xxxx"/>

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧