Javascript React Select-如何在发生更改之前获取表单的文本值?
因此,我正在为我的一个网站制作搜索栏,我使用的一个组件,react select有点问题。下面是一些示例代码Javascript React Select-如何在发生更改之前获取表单的文本值?,javascript,reactjs,react-select,Javascript,Reactjs,React Select,因此,我正在为我的一个网站制作搜索栏,我使用的一个组件,react select有点问题。下面是一些示例代码 const baseOptions = [ { label: 'Users', options: [ ] }, { label: 'Pages', options: [ ] }, { label: 'Search Google Index', value: 'search_go
const baseOptions = [
{ label: 'Users', options:
[
]
},
{ label: 'Pages', options:
[
]
},
{ label: 'Search Google Index', value: 'search_google_index', type: "google_index" },
{ label: 'Search Bing Index', value: 'search_bing_index', disabled: 'yes' },
]
handleSearchChange = selectedOption => {
this.setState({
selectedOption,
}, () => {
console.log(`Option selected:`, this.state.selectedOption);
switch (this.state.selectedOption.type) {
case "user":
window.location = "/@" + this.state.selectedOption.label
break;
case "google_index":
console.log("Searching google index");
/*Here is where I need to catch the value of react-select*/
break;
default:
break;
}
});
};
问题
在选择新值之前,我不确定如何获取框中键入内容的值
目标
我的目标是,当用户选择“搜索谷歌索引”时,在谷歌搜索字段中键入的术语。根据,要获得键入的值,您可以使用onInputChange
道具,如下所示:
handleInputChange = (inputValue) => {
//get the character entered by user here in inputValue
};
在组件调用中:
<Select
onInputChange={handleInputChange}
....
/>
更新:
建议:
您应该仅使用react select下拉列表来显示不用于搜索选项的用户列表。对于搜索选项,您可以有两个按钮。什么“框”?在问题部分Yes,这是可行的,我确实在本地代码中包含了它,但是OnChange事件是我查找类型化值的地方。假设我输入“birds”,然后选择“Search Google Index”,那么该值现在更改为“Search Google Index”,在这里我需要检索“birds”一路上发送:)我不认为这是下拉菜单的目的,相反,你可以简单地使用一个文本框从用户那里获取输入,并使用两个按钮标记搜索谷歌索引和搜索必应索引。是的,但是你不能真正搜索用户列表,可以吗;)感谢您的帮助,如果我找到任何答案,我将继续查找并发回。如果您有一个列表要处理,那么您需要对用户列表使用react select,而不是搜索选项。要进行搜索,您需要有两个按钮。