如何获取输入文件的值?

如何获取输入文件的值?

问题描述:

我有这样的代码:如何获取输入文件的值?

<input className='input-file' type='file' onChange={this.handleDocumentUploadChange(index)} /> 

index是预定int。问题是,我想读这个元素的价值,但我不能。我试图访问event.target.value,但它保持为空。有任何想法吗 ?

+0

https://www.npmjs.com/package/react-file-input - 检查出来 – James111

+0

尝试使用“FileReader”API。 https://developer.mozilla.org/en-US/docs/Web/API/FileReader – Shiyou

+0

只是猜测,但你有没有试过像这样传递? 'this.handleDocumentUploadChange(this,index)' – Bikas

我发现了这个问题。

我的输入呈现在.map()函数中。因此,当我想绑定thisonChange={this.handleDocumentTitleChange.bind(this, index)}它wouldnt工作。

因此,我做了这个var self = this;,并将其绑定到self

+2

内部的事件对象'[] .map()'带有第二个参数,'this';你可能会注意到它在许多反应示例中的循环中使用,并且它将防止需要绑定任何东西或别名'this'。所以,'.map(fn,this)'... – dandavis