簡體   English   中英

如何在更改之前獲取TextInput的值?

[英]How to get the value of TextInput before it was changed?

我有以下幾點:

<TextInput
                        id="txtDupProjectName"
                        labelText=""
                        placeholder="Name"
                        required
                        defaultValue={this.projectName + "_Copy"}
                        // invalid={this.dupProjectName === ''}
                        // invalidText="Mandatory"
                        onChange={ e => this.handleDupProjectNameChange(e) }
                    />

如果我沒有在textInput內鍵入任何字符(未調用handleDupProjectNameChange),但是需要將更改保存為默認值...

我使用過(基於Jeroen Jonkman的成功):

document.getElementById('txtDupProjectName').value

並在componentDidMount中:

componentDidMount() {

    console.log("...............", document.getElementById('txtDupProjectName').value  )

    this.setState({
        dupProjectName: document.getElementById('txtDupProjectName').value
    })
}

但是問題是我同時顯示多個組件(來自同一類型),所以我使用的id不相同,我正在將它們中的一個賦予其他所有組件。

我將嘗試使用id中的項目名稱來使其相同

如果需要在更改之前獲取該值,則需要使用onfocus事件。 每當用戶激活該字段時,都會引發此錯誤。

您在輸入字段中沒有使用name屬性。

使用:document.getElementById('...')..代替或添加名稱屬性

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM