suchen

Heim  >  Fragen und Antworten  >  Hauptteil

Javascript – Eingabedatei reagieren

1 Auf meiner Seite gibt es ein verstecktes Eingabetyp-Dateielement. Dieses Element kann über das ref-Attribut abgerufen werden und heißt this.inputFile.
2 Auf der rechten Seite des Seitenkopfes befindet sich eine Schaltfläche, um das auszulösen this , fileInput.click()
3 Aber das Ergebnis ist, dass das Dateiauswahlfeld nicht angezeigt werden kann. Es ist wirklich kein Problem mit der Logik

class FileManage erweitert Komponente{

constructor(props){
    super(props);
    this.onHandleBack = this.onHandleBack.bind(this);
    this.showOperationSheet = this.showOperationSheet.bind(this);
}   
onHandleBack(){
    this.props.history.goBack();
}

showOperationSheet(){
    console.log('点击上传');
    if(this.fileInput){
        console.log('进入判断');
        //很神奇,必须有这行代码,才能调用图片选择,我也很无奈啊。
        console.log(this.fileInput.click());
        this.fileInput.click()
    }
};
render(){
         
    return (
        <p>
            <p onClick={this.showOperationSheet}>按钮</p>
            <p style={{display:"none"}}>
                <form action="" encType="multipart/form-data" method='POST' onSubmit={this._onSubmit}>
                    <input type="file" ref={(input)=>{this.fileInput = input}} onChange={this._onChange}/>
                </form>
            
            </p>
        </p>
        
    )
} 

}

Standard FileManage exportieren

我想大声告诉你我想大声告诉你2704 Tage vor984

Antworte allen(1)Ich werde antworten

  • 欧阳克

    欧阳克2017-07-05 10:46:09

    贴具体代码啊,这样好难脑补

    Antwort
    0
  • StornierenAntwort