文本框应该只允许十六进制值

Textbox should allow only Hexa decimal values

本文关键字:十六进制 文本      更新时间:2023-09-26

我有一个文本框,只能输入两位数字。我想要的是,用户只能在其中输入Hexa值,如12,a0,0a(2位数)。如果用户输入任何其他值,它将不会被输入。你能帮忙吗。

<input onkeyup=validateHexa(this); class='nbb' maxlength='2'  value='??'/>
function validateHexa(ele){
var control = ele.value;
var regExp = new RegExp(/^([A-Fa-f0-9]{2}){8,9}$/);
if (!regExp.test(control))
 ele.value="true";
}

您可以这样做:

function replaceInput(ele) {
  var re = /[^A-Fa-f0-9]/g;
  ele.value = ele.value.replace(re, '');
}
<input onkeyup=replaceInput(this); class='nbb' maxlength='2'  placeholder='??' pattern="[A-Fa-f0-9]{2}"/>

JSFiddle

你好,你应该试试([aA-hH 0-9]{2})这样的正则表达式如果有任何问题,请发表评论:)