<input type="text" onpropertychange="vvv(this.value)" id="dd" />
<script type="text/javascript">
function vvv(v) {
if(!isNaN(parseInt(v,10))) {
alert(v);
} else {
alert("非数字")
}
}
</script>
如果判断后为非0-9正整数(我上面的代码没实现这功能,顺便问一下如何判断输入的数据只限定在0-9的整数),那该如何让当前输入的数据不显示,但之前输入的正常显示呢??
比如,我想输入100,是可以正常显示的,但是如果我想输入100d的话,则应该在第4次输入d的时候提示"非数字",然后input框中显示的只是100,而不是100d
<script type="text/javascript">
function vvv(v) {
if(!isNaN(parseInt(v,10))) {
alert(v);
} else {
alert("非数字")
}
}
</script>
如果判断后为非0-9正整数(我上面的代码没实现这功能,顺便问一下如何判断输入的数据只限定在0-9的整数),那该如何让当前输入的数据不显示,但之前输入的正常显示呢??
比如,我想输入100,是可以正常显示的,但是如果我想输入100d的话,则应该在第4次输入d的时候提示"非数字",然后input框中显示的只是100,而不是100d
解决方案 »
- 求 悬浮式菜单 js代码
- JS不用正则表达式如何验证整型。
- js ie7问题.
- 如何在不刷新页面的情况下,刷新一个调用的js文件呢?
- 一段JS代码在http://localhsot和http://本机IP下显示的效果不一样
- firefox中的对象在那里?
- 关于网页中下载图片的问题
- 大家来看看我做的颜色对话框,提点意见
- 借个地方提问一下只因这儿人气好
- 求大神帮忙,网页点击弹出弹窗后,滑动鼠标,弹窗不动,页面在动..有什么方法可以让页面也不动么
- 小括号做什么用的啊
- |zyciis| 像<input type="button" onclick="setTimeout('alert(123);',100)" />文字要怎么写?
<script type="text/javascript">
function vvv(v,o) {
if(!isNaN(parseInt(v,10))) {
alert(v);
} else {
alert("非数字")
o.value=o.value.replace(/\D+/,'')
}
}
</script>
而且...如果第一次就输入非数字的话,则alert一直显示,除非把IE的进程kill掉
而且这样的话,下面的代码如果改成onkeypress的话,当输入非数字的时候还是会显示非数字,但是再输入非数字就无法输入,除非输入数字,当输入数字的时候则会把当前的非数字替换掉<html>
<body>
<input type="text" onpropertychange="vvv(this)" id="dd" />
<script type="text/javascript">
function vvv(o) {
o.value=o.value.replace(/\D+/,'');
}
</script>
</body>
</html>
这样虽然可以让非数字无法输入,但是每次触发onpropertychange事件都会弹出“Stack overflow at line:0”提示(应该是replace方法触发了onpropertychange事件导致的)