Javascript 如何在';输入';按入文本输入-反应本机
我正在努力使搜索栏。我希望用户在Javascript 如何在';输入';按入文本输入-反应本机,javascript,node.js,react-native,react-native-android,react-native-ios,Javascript,Node.js,React Native,React Native Android,React Native Ios,我正在努力使搜索栏。我希望用户在TextInput中键入一些内容,当用户按“回车”时,我希望调用我的函数 <TextInput //here when user press enter call function() style={styles.searchStyle} allowFontScaling={false} placeholder="Search" onChangeText={(val) => {setSearch(val)}} /> {s
TextInput
中键入一些内容,当用户按“回车”时,我希望调用我的函数
<TextInput
//here when user press enter call function()
style={styles.searchStyle}
allowFontScaling={false}
placeholder="Search"
onChangeText={(val) => {setSearch(val)}}
/>
{setSearch(val)}
/>
我尝试了onSubmitEditing
,但不起作用。import-React,{Component}从'React'导入{TextInput}从'React-native'
import React, { Component } from 'react' import {TextInput} from 'react-native'
const Trial =()=>{
const onSubmitted=()=>{
console.log('Submitted')
}
return(
<TextInput
//here when user press enter call function()
// style={styles.searchStyle}
allowFontScaling={false}
placeholder="Search"
onSubmitEditing={()=>onSubmitted()}
/>
)
}
export default Trial
常数试验=()=>{
提交的常数=()=>{
console.log('Submitted')
}
返回(
OnSubmited()}
/>
)
}
导出默认测试
在submitedit中,它工作得很好,我希望它会对您有所帮助如果我要解决这个问题,我将利用表单OnSubmit属性 我的HTML将如下所示
<form onSubmit=(handleSubmit())>
<input id="name" type="text" placeholder="Enter your name">
<p id="x">show</p>
</form>
const handleSubmit = () => {
const getName = document.getElementById("name")
document.getElementById("x").innerHTML = getName.value
}
根据您的问题,这可以正常工作,请告诉我它是否解决了问题。如果您在文本输入中使用multiline={true},如
,则Submitediting将不起作用,而将移到下一行
我正在做一个变通方法,所以基本上我检查用户是否输入了下一行,如果是,调用提交函数并关闭键盘,您可以从react native导入{keyboard}
<TextInput onChangeText={(txt) => {
if (/\n/.test(txt)) {
//call submit function here
Keyboard.dismiss()
return
} else {
//do something here
}
}} />
{
如果(/\n/.test(txt)){
//在这里调用提交函数
键盘
返回
}否则{
//在这里做点什么
}
}} />