我有以下组件由渲染函数返回:
<form onSubmit={(e) => this.filter(e)}>
<Modal className='side-modal' show={this.props.show} onHide={this.props.hide}>
<Scrollbars autoHide>
<Modal.Header closeButton>
<Modal.Title>Filter</Modal.Title>
</Modal.Header>
<Modal.Body>
<FormGroup>
<ControlLabel>Search Based On Keywords</ControlLabel>
<FormControl value={this.state.searchInput} type='text' placeholder='Legal Entity Name, DBA Name, Email or Processor Submerchant ID' onChange={this.setInputSearchText} />
</FormGroup>
<FormGroup>
<ControlLabel>Account Status</ControlLabel>
<CustomSelect
selectID={'accountStatus'}
hasListIcon={true}
listItemDetails={this.state.itemList}
defaultItemObj={this.state.defaultItem}
isReset={this.state.isReset}
setValue={this.setAccountStatusValue}
/>
</FormGroup>
</Modal.Body>
</Scrollbars>
<Modal.Footer>
<Button bsStyle='primary' type='submit'>
<span className='icon ion-checkmark icon--inner'></span> Apply
</Button>
<Button type='reset' onClick={this.resetFilter}>
<span className='icon ion-android-refresh icon--inner'></span> Reset
</Button>
</Modal.Footer>
</Modal>
</form>
我希望从键盘单击"输入"时调用 filter 函数,但它似乎行不通,即使在单击 apply上单击时,onsubmit ins也没有调用。这里可能有什么问题?先感谢您。这是我的过滤功能:
filter = (e: any) => {
e.preventDefault();
this.getSomeReults();
this.props.hide();
}
我想您正在将此插件用于模态,并且根据我可以看到的每个组件,即模态标头,模态主体,模态页脚是独立的。因此,您的代码即
<form onSubmit={ e => this.filter(e) } >
</form>
应该进入
<ModalBody>
//Form code here
</ModalBody>