jquery ajaxform上传文件返回不提示信息的问题

在使用jquery的ajaxform插件进行ajax提交表单并且上传文件的时候,返回类型datatype :json但是后台通过写出一个json对象后,在执行完以后没有进入success函数,而是直接弹出一个下载窗口,将json串当下载来处理了。后来发现解决方法是,不能把json串以json的形式写出来,而是以"text/html"的格式,并把json串放到textarea标签中。

例如:

response.setContentType("text/html;charaset=utf-8");

response.getWriter().write("<textarea>"+jsonstring+"</textarea>");

这样就能够正常在js中使用json对象了。

html:

<body>
<form id="upLoadForm" action="${url}/upLoadFile" method="post">
英文检测:<input name="filePath" type="file"></input>
<button id="upload" >文件检测</button>
</form>
</body>

$(function(){

    $(‘#upLoadForm‘).ajaxForm({
        success : function(data, statusText, jqXHR, $form) {
        alert(data);
      }
   });
});

CheckController:

@RequestMapping(value = "/upLoadFile", method=RequestMethod.POST)
public @ResponseBody void processUploadd(HttpServletResponse response,
@RequestParam(value = "filePath") MultipartFile file,HttpSession httpSession) {

String message="没有中文!";
response.setContentType("text/html;charaset=utf-8");
try {
response.getWriter().write(message);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

/*String filename=file.getOriginalFilename();//得到上传文件名
if (filename == null || "".equals(filename))
{
return null;
}

try{
FileManager fileSave = new FileManager();
//获得上传路径
String filePath=FileManager.getUploadFilePath();
fileSave.SaveFileFromInputStream(file.getInputStream(),filePath,filename);
String content = FileManager.readTxtFile(filePath + "\\" + filename);
List<DataFormat> errorList = CheckEn.checkEn(content);
String info = "";
for(int i=0; i<errorList.size(); i++) {
String cn = errorList.get(i).getCn();
String pub = errorList.get(i).getErrorMessage();
info = pub + " 中文是:" + cn;
}
if(info!= "") {
message=info;
}

}
catch (Exception e)
{
e.printStackTrace();

return message;
} */
//return message;
}

时间: 2024-11-05 02:28:20

jquery ajaxform上传文件返回不提示信息的问题的相关文章

ASP.NET MVC中,怎么使用jquery/ajaxForm上传文件

ajaxForm插件最好选择:jquery forms plugin. 以下为示例: Ajax.BeginForm @using (Ajax.BeginForm("YourAction", "YourController", new AjaxOptions() { HttpMethod = "POST" }, new { enctype = "multipart/form-data"})) { @Html.AntiForger

上传文件返回数据提示下载

摘要:  最近项目中出现上传文件返回的json数据会被提示下载,只有在ie10+中才会出现这个问题.前端使用jQuery的插件ajaxForm提交表单,后台返回的数据格式为json.代码如下: 后端Python: def jsonp(func): """Wraps JSONified output for JSONP requests.""" @wraps(func) def decorated_function(*args, **kwargs)

MVC3+jquery Uploadify 上传文件

最近做项目用到了上传图片的功能,以前也写过这类代码,不过都是用传统的file标签,今天整理一个好用的插件Uploadify..都做了一些注释,一看便知. 可以去官网下载最新的:Uploadify下载地址:http://www.uploadify.com/download/ 1.引用文件 <link href="@Url.Content("~/Scripts/uploadify/uploadify.css")" rel="stylesheet"

IE下AjaxForm上传文件直接提示下载的兼容性Bug

使用AjaxForm上传文件时候,在IE下直接提示下载保存: 我的示例代码: return this.Json( new { prop1 = 5, prop2 = 10 }); 这种问题只出现在IE下,是由于AjaxFrom只接受以Html格式返回的Json,所以需要在返回的json对象里设置content: return this.Json( new { prop1 = 5, prop2 = 10 }, "text/html");

jquery.uploadify上传文件配置详解(asp.net mvc)

页面源码: <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>jquery upload上传文件(asp.net mvc)配置</title> <script src="Resources/jquery.js"

jQuery.form 上传文件

今年大部分是都在完善产品,这几天遇到了一个问题,原来的flash组件不支持苹果浏览器,需要改.在网上搜了下,看到一个jQuery.form插件可以上传文件,并且兼容性很好,主要浏览器大部分都兼容,插件官网: http://malsup.com/jquery/form/.还有就是需要jQuery类库. 结果图片: 前端代码: <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head&g

jQuery Ajax上传文件

function UploadFileExcel() { var file = $("#file_upload")[0].files[0]; var form = new FormData(); form.append("file", file); form.append("uid", uid); form.append("token", token); $.ajax({ url: eshopUrl + "/inde

[Plugin] JQuery.uploadify上传文件插件的使用详解For ASP.NET

URL:http://www.cnblogs.com/xiaopin/archive/2010/01/21/1653523.html 今天下午整理文件上传的例子,感觉收集到的例子都很不人性话,后来找到一个还可以的,本来想改成类似于腾讯QQ相册那种方式,仔细看了一下是Flash的, 而且那个极速上传插件也不知道用什么做的?问了一下,说是什么cgi. 搞得一头雾水! 后来朋友推荐了一个这个叫uploadify的上传插件,似乎挺好,就到官方下了个示例运行,感觉挺好,自己再稍加美化一下就OK 了..!

jquery uploadify上传文件时报HTTP401错误

1.http 401错误简单介绍 当用浏览器访问一个服务地址时,会向服务发送一个http请求,服务变会处理请求,并给浏览器返回一个状态码,每个状态码代表的不同的服务响应状态.     比如:200 代码响应成功,404资源未找到 这里的401就代表没有访问资源的权限状态. 2.401错误分析原因 正如上面介绍的一样,uploadify发出了上传请求,但服务端认为请求没有相应的权限. 现在大多数的身份验证用的是session,如果浏览器的cookie是打开的,那么sessionid的值是存在coo