Javascript NumberTextBox仅允许整数
我只需要对Javascript NumberTextBox仅允许整数,javascript,dojo,dijit.form,Javascript,Dojo,Dijit.form,我只需要对NumberTextBox中的integer值进行验证 使用以下代码,在NumberTextBox54.454中输入十进制值会错误地验证 我想知道: 如何仅验证整数值 是否可以避免用户输入 您可以使用以下选项: 我从中得到了一个代码并进行了修改。请检查它是否解决了您的问题 <input type='text' onkeypress='validate(event)' /> <script type="text/javascript"> funct
NumberTextBox
中的integer值进行验证
使用以下代码,在NumberTextBox
54.454中输入十进制值会错误地验证
我想知道:
- 如何仅验证
值整数
- 是否可以避免用户输入
<input type='text' onkeypress='validate(event)' />
<script type="text/javascript">
function validate(evt) {
var theEvent = evt || window.event;
var key = theEvent.keyCode || theEvent.which;
key = String.fromCharCode( key );
var regex = /[0-9]/;
if( !regex.test(key) ) {
theEvent.returnValue = false;
if(theEvent.preventDefault) theEvent.preventDefault();
}
}
</script>`
功能验证(evt){
var theEvent=evt | | window.event;
var key=theEvent.keyCode | | theEvent.which;
key=String.fromCharCode(key);
var regex=/[0-9]/;
如果(!正则表达式测试(键)){
theEvent.returnValue=false;
如果(theEvent.preventDefault)theEvent.preventDefault();
}
}
`
可能会帮助您获得有关模式属性的有用链接—只是一个简单的问题……您知道是否可以禁用在控件本身上输入。/?使用NumberTextBox。我知道在事件键控上做一些变通是可能的,但我不确定它是否支持我的dijit本身。谢谢你的时间。@GibboK,没问题,我不太确定,我会很快看一看谢谢你的回答,但我的问题是专门针对dijit的NumberTextBox的。。
require(["dijit/form/NumberTextBox", "dojo/domReady!"], function (NumberTextBox) {
new NumberTextBox({
name: "programmatic",
constraints: {
pattern: '@@@',
places: 0
}
}, "programmatic").startup();
});
<input type='text' onkeypress='validate(event)' />
<script type="text/javascript">
function validate(evt) {
var theEvent = evt || window.event;
var key = theEvent.keyCode || theEvent.which;
key = String.fromCharCode( key );
var regex = /[0-9]/;
if( !regex.test(key) ) {
theEvent.returnValue = false;
if(theEvent.preventDefault) theEvent.preventDefault();
}
}
</script>`