React Native: mobile number validation accept numeric value only
Use this validation.
mobilevalidate(text) {
const reg = /^[0]?[789]\d{9}$/;
if (reg.test(text) === false) {
this.setState({
mobilevalidate: false,
telephone: text,
});
return false;
} else {
this.setState({
mobilevalidate: true,
telephone: text,
message: '',
});
return true;
}
}
Try using keyboardType='phone-pad'
.
You need to check if input string is number or not. Check below code:
<TextInput
ref='mobileNo'
keyboardType="numeric"
style={[styles.textInput, { width: '100%' }]}
placeholder='Enter mobile number'
onChangeText={(value) =>
let num = value.replace(".", '');
if(isNaN(num)){
// Its not a number
}else{
this.handleChange('mobileNo', num)}
}
/>