【发布时间】:2013-03-20 03:00:53
【问题描述】:
我已经实现了最新版本的 FineUploader,它可以完美地呈现在我的页面上。
$(document).ready(function () {
$('#jquery-wrapped-fine-uploader').fineUploader({
request: {
endpoint: 'fu/fineuploader.cfm'
}
}).on('error', function(event, id, name, reason) {
alert('error');
})
.on('complete', function(event, id, name, responseJSON){
alert('complete');
});
});
然后我选择了一个文件,它成功地联系了 Coldfusion 页面。 如果我查看调试器工具/控制台,我可以看到 Coldfusion 页面的响应。 如果我对 FORM 数据进行 CFDUMP,我也会看到文件正在传递。 所以到目前为止一切正常。
但是,一旦完成 Coldfusion 页面,调用页面就会触发“错误”功能并警告“错误”。
如果我查看调试器/控制台,没有错误。所以我不明白为什么控件仍然返回错误。我怀疑错误可能是我从 cfm 页面返回的内容,目前是(这是目前 cfm 页面中写的全部内容):
<cfoutput>#serializeJSON( 'true' )#</cfoutput>
有没有人看到这里有什么问题?我真的不知道去哪里尝试解决这个问题,因为没有错误。
我正在使用 CF10、FineUploader 3.3、Chrome
提前致谢。
已接受答案的更新/附录:
基本上,响应不仅必须是正确的 JSON 格式,而且必须具有“成功”:“真”的名称/值对。
所以,之前我返回的 JSON 是这个,它是有效的 JSON,但是失败了:
{"name":"Peter"}
但是,它只有在添加“成功”:“真”名称/对后才开始正常工作:
{"success":"true","name":"Peter"}
【问题讨论】: