Reactjs 点击提交

Reactjs 点击提交,reactjs,search-form,Reactjs,Search Form,我有一个搜索,自动提示。单击自动建议时,我希望表单在用户不必按enter或按钮的情况下提交。有点像谷歌的搜索框。到目前为止我试过的都不管用 我尝试过“onClick={handleSubmit}”,但只在输入字段中已经有值时才这样做 到目前为止,这是我的代码的一部分: const handleOnChange = (event, { newValue } ) => { setSelectedValue(newValue); handleSubmit(); } co

我有一个搜索,自动提示。单击自动建议时,我希望表单在用户不必按enter或按钮的情况下提交。有点像谷歌的搜索框。到目前为止我试过的都不管用

我尝试过“onClick={handleSubmit}”,但只在输入字段中已经有值时才这样做

到目前为止,这是我的代码的一部分:

const handleOnChange = (event, { newValue } ) => {
    setSelectedValue(newValue);
        handleSubmit();
}

const onSuggestionsFetchRequested = ({ value }) => {
    setSuggestions(getSuggestions(value, groupedOptions))
}

const onSuggestionsClearRequested = () => { enter code heresetSuggestions([]);
}

const handleSubmit = event => {
    event.preventDefault();

    if (selectedItem) {

        history.push(`/issuers/${selectedItem.link}`, selectedItem);
    }
}



const getSuggestionValue = suggestion => {
    setSelectedItem(suggestion);
    return suggestion.name;
}

const inputProps = {
    placeholder: 'Search for issuers, bond codes...',
    value: selectedValue,
    onChange: handleOnChange
};

if (fetching) {
    return <Spinner animation='border' />
}

return (
    <form className='search-bar-wrapper' onSubmit={handleSubmit} onClick={handleOnChange}>
        <Autosuggest  
            multiSection={true}
            suggestions={suggestions}
            onSuggestionsFetchRequested={onSuggestionsFetchRequested}
            onSuggestionsClearRequested={onSuggestionsClearRequested}
            getSuggestionValue={getSuggestionValue}
            renderSuggestion={renderSuggestion}
            renderSectionTitle={renderSectionTitle}
            getSectionSuggestions={getSectionSuggestions}
            inputProps={inputProps}
        />
        <Button type="submit">
            <SearchSVG />
        </Button>
    </form>
)
consthandleonchange=(事件,{newValue})=>{
设置选定值(新值);
handleSubmit();
}
const onSuggestionFetchRequested=({value})=>{
设置建议(获取建议(值、组选项))
}
const onSuggestionClearRequested=()=>{在此处输入代码设置建议([]);
}
const handleSubmit=事件=>{
event.preventDefault();
如果(选择编辑项){
history.push(`/issuers/${selectedItem.link}`,selectedItem);
}
}
const getSuggestionValue=建议=>{
setSelectedItem(建议);
返回建议.name;
}
常量输入属性={
占位符:“搜索发行人、债券代码…”,
值:selectedValue,
onChange:handleOnChange
};
如果(获取){
返回
}
返回(
)
}