2016-03-03 106 views
0

我有這樣的代碼:如何獲取輸入文件的值?

<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

回答

0

我發現了這個問題。

我的輸入呈現在.map()函數中。因此,當我想綁定thisonChange={this.handleDocumentTitleChange.bind(this, index)}它wouldnt工作。

因此,我做了這個var self = this;,並將其綁定到self

+2

內部的事件對象'[] .map()'帶有第二個參數,'this';你可能會注意到它在許多反應示例中的循環中使用,並且它將防止需要綁定任何東西或別名'this'。所以,'.map(fn,this)'... – dandavis