javascript - React:输入类型号,maxLength 不起作用?
问题描述
假设我试图在输入字段中获取 10 个数字,但 maxLength 属性不适用于 type='number',尽管它适用于 type='text'。
import React, { Component } from 'react'
export default props => {
const {
handleInput
} = props;
return (
<div>
<span>+92</span>
<input type='number' placeholder='Phone Number' maxLength={10} onChange={handleInput}/>
</div>
)
}
上面编写的代码片段中缺少什么?
一种可能的解决方法是,我在输入标记中使用 value 的属性并将输入类型设为文本,并通过编写 onChange 函数继续测试来自正则表达式的输入值。
解决方案
这是一个普通的 HTML 元素,与 React 无关。
对于输入,类型号被忽略,您应该实现自己的验证。根据 Mozilla 文档:https ://developer.mozilla.org/en-US/docs/Web/HTML/Element/Input#attr-maxlength
推荐阅读
- javascript - 需要帮助调整 javascript 功能
- jquery - 为什么返回模板时django上下文是一个字符串?
- javascript - Ajax 表单提交被忽略
- entity-framework - EF Core:来自内容实体的可选一对一外键关系
- python - 创建从字典键到它的值的所有组合的 Pythonic 方法
- java - MissingServletRequestPartException:所需的请求部分“文件”不存在 Springboot
- android - 如何使用范围存储创建外部目录并授予对目录 android 的访问权限
- python - 无法安装 mysqlcient:无法打开包含文件:'mysql.h'
- python - 如何从 Python 列表的末尾获取 N 个元素?N >= 零
- python - 使用 `numpy.datetime64`-objects 从列表中获取日期