javascript - 使 HTML 输入的第一个字符不可编辑 - javascript
问题描述
我有一个输入字段
<input type="text" value="$">
$
无论输入中输入的数字或字符如何,我都需要在输入的第一个位置固定符号
目前我在函数$
外部附加符号onChange
value = '$' + value
基本上,用户不应该能够清除$
符号。它应该被修复。如何做到这一点?
我正在使用 javascript 和 React。
解决方案
在输入更改时,您可以首先从值中删除所有出现的$
。然后在值前面加上$
.
尝试以下操作:
function inputValue(el){
el.value = el.value.replace(/[$+]/g, ''); //replace all $ with empty string
el.value = '$' + el.value; //prepend $ to the input value
}
<input type="text" value="$" oninput="inputValue(this)">
如果您只想允许数字和点(.
),只需使用:
el.value = el.value.replace(/[^0-9.]/g, '');
推荐阅读
- react-native - 对角线直通文本 React-Native
- java - log4jdbc Java 8 兼容性
- tensorflow - 我们可以将我们的数据集(图像)添加到 ML5 数据模型吗
- python - Python:删除字符串中的重复项
- java - 创建名为“methodValidationPostProcessor”的 bean 时出错
- sql - 检索匹配模式之前的字符
- c# - 对DataGridView排序后保持选定的行位置c#
- c++ - 在 boost asio tcp 套接字上接受多个连接
- java - 一个 XML 布局中的 Toolbar、BottomNavigationView 和 FrameLayout
- c++ - 无法从 float* 类型转换为 char*