2010-07-21 50 views
2

当文件上传时,将standardsubmit设置为false(默认),文件上传,但然后JavaScript错误崩溃,因为它无法解析答复 - 它期待一个JSON响应。在extjs中实现一个简单的文件上传

设置为true时,它可以工作,但不能改变目标(或者如果可以的话,我无法知道如何),这是我需要做的事情,我需要它上传到一个隐形的iframe以防止页面回发。

有没有办法让它忽略响应或接受正常的http响应?我不相信提交表单甚至会给你一个回应。我只想在文件上传后运行代码。

任何人有任何想法?该错误基本上在库本身内,试图解析一个JSON响应,但响应是一个空字符串,所以它的错误。

+0

您有权访问处理文件上传的服务器上的脚本吗?为什么不让它返回JSON? – timdev 2010-07-21 18:07:34

回答

1

extjs严重缺乏文档(或至少可搜索的文档)!最终我找到了解决方案,这让我改变了目标。我相信这是control.dom.target。这也是理想的解决方案,因为我不想为特定的客户端解决方案实施服务器端代码的“黑客攻击”。

顺便说一句,返回{success:true}也起作用了,之后我尝试了。

1

没有错误。如果一切顺利的话,FormPanel希望得到{success:true},否则{success:false,错误:[...]}会出错。

基于这个答复,处理程序实际上是调用其他的事件处理程序负责凸显失败服务器端验证的字段等

你需要改变你的服务器端脚本返回什么ExtJS的期望它返回。