![](/img/trans.png)
[英]How can I make a text box in React which allows only numbers or an empty value, which triggers the number keypad on mobile?
[英]I am trying to create a text box which allows only numbers using typescripts. See below example
使用打字稿我想创建一个文本框,允许数字。
import {bindable} from 'aurelia-framework';
export class textboxNumber {
@bindable public allownumber : number;
}
function onlynumber(allownumber) {
allownumber = (allownumber) ? allownumber : event;
var charCode = (allownumber.charCode) ? allownumber.charCode : ((allownumber.keyCode) ? allownumber.keyCode :
((allownumber.which) ? allownumber.which : 0));
if (charCode > 31 && (charCode < 65 || charCode > 90) &&
(charCode < 97 || charCode > 122)) {
return false;
}
return true;
}
<input type="text" onkeypress="onlynumber(allownumber)" required />
无需为此创建自定义元素,因为有内置输入类型。
<input type="number" />
使用pattern
属性可以验证表单提交中的输入,并让浏览器完成工作。
const form = document.querySelector('form'); form.addEventListener('submit', e => { // preventing the form from being submitted so that multiple inputs can be tested e.preventDefault(); alert('submit'); });
<form> <input type="text" pattern="-?\\d*" title="Value must be an integer" required /> <input type="submit" value="submit" /> </form>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.