Я использую модульact-bootstrap-typeahead в одном из моих приложений.Это работает нормально, за исключением одного случая.
Я не могу отправить форму, нажав клавишу ВВОД, если нет результатов.
т.е.если есть какие-то предложения , предоставленные response-bootstrap-typeahead, я могу выбрать один из вариантов и отправить форму.В этом случае, может вызвать обратный вызов onSubmit.
, если есть нет предложений , предоставленных response-bootstrap-typeahead, не сможет отправить форму.
ЕслиЯ отправляю форму, используя метод form.submit () для события onKeyDown, форма будет отправлена, однако страница обновляется вместо вызова обратного вызова, что приводит к полному выходу из моего контрольного результата.
Желаемый результат: Я должен иметь возможность вызывать обратный вызов onSubmit, даже если нет предложений, предложенных response-bootstrap-typeahead.
Вот мой код.
<form ref={(form) => this.form = form} onSubmit={this.sendMessage}>
<Typeahead
id="rbt-example"
dropup={true}
ref={(typeahead) => this.typeahead = typeahead}
onChange={this.valueChanged}
onInputChange={this.updateQuery}
onBlur={(e) => this.updateQuery(e.target.value, e)}
onKeyDown={(e) => {
// Submit the form when the user hits enter.
if (e.keyCode === 13) {
this.form.submit();
}
}}
options={options}
placeholder="Type your queries here..."
renderMenu={(results, menuProps) => {
// Hide the menu when there are no results.
if (!results.length) {
return null;
}
return <TypeaheadMenu {...menuProps} options={results} />;
}}
/>
<button type="submit">Submit</button>
</form>