2016-01-20 41 views
1

我有这个简单的代码片段,我可以在FormData-Object中的inputfield中添加一个选定的文件,但无论我做什么,data.toSource()总是不会返回任何内容。jQuery的 - FormData()追加不工作?

有人可以告诉我,我做错了什么?

http://jsfiddle.net/ktcjjff4/

$(document).ready(function() { 

$('#basicUploadFile').live('change', function() {   

    data = new FormData(); 

    for (var i = 0; i < this.files.length; i++) { 
     data.append('userfile', this.files[i].name); 
     alert(this.files[i].name); 
    } 

    alert(data.toSource());  


    });  

}); 

回答

1

data.toSource()在浏览器或Safari不是函数。它应该是:

data.toString(); // OR 
JSON.stringify(data); 

另外toSource()在Internet Explorer或Safari中不起作用。它是壁虎专用的。有关替代方法,请参见Implementing Mozilla's toSource() method in Internet Explorer

+0

我只是做了'toSource()'来看看从我的输入文件已投入FO​​RMDATA – AdmiralCrunch

+0

@ user5517285尝试'FormData.entries()'也。 –

+0

@ user5517285 Chrome对除append以外的方法的支持目前落后于“启用实验性Web平台功能”标志。 –