如何控制INPUT中只能输入0~59的数字?谢谢! keyCode>=48&&event.keyCode<=57改为keyCode>=0&&event.keyCode<=59好象是这样 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你这里限制了只能输入数字form后面加上onSubmit="return function();"前面写一个js的函数设置数字大于59返回false <SCRIPT language="javascript">function regInputRestriction(oObj,reg,isChinese){ function regInput(obj, reg, inputStr) { var docSel = document.selection.createRange(); if (docSel.parentElement().tagName != "INPUT") return false; oSel = docSel.duplicate(); oSel.text = ""; var srcRange = obj.createTextRange(); oSel.setEndPoint("StartToStart", srcRange); var str = oSel.text + inputStr + srcRange.text.substr(oSel.text.length); if(reg.test(str)) { if(parseInt(str)>=0 && parseInt(str)<59) return true; else return false; } else return false; } //限制输入法是否允许打开 if(isChinese == null) isChinese = false; if(isChinese) oObj.style.imeMode = "auto"; else oObj.style.imeMode = "disabled"; //注册事件 oObj.onkeypress = function() { return regInput(this,reg,String.fromCharCode(event.keyCode)); } oObj.onpaste = function() { return regInput(this,reg,window.clipboardData.getData('Text')); } oObj.ondrop = function() { return regInput(this,reg,event.dataTransfer.getData('Text')); }}</SCRIPT><BODY onLoad="regInputRestriction(document.all.txt,/^\d*$/)"><INPUT id="txt"></BODY> <input name=mm onkeypress="return cc(59)" onpaste="return !clipboardData.getData('text').match(/\D/)" ondragenter="return false" style="ime-mode:Disabled" > 只能输入 0-59 之间的数字 <script language="JavaScript">function cc(n) { var k = window.event.keyCode; var s = window.event.srcElement.value + String.fromCharCode(k); return((k >=48 && k <=57) && parseInt(s, 10) >= 0 && parseInt(s, 10) <= n);} </script>对于这种时间的输入建议用时间控件来做 to:meizz(梅花雪)谢谢你写的函数,但你的函数只能用于顺序输入的时候可以判断,如先在文本框中输入1,再把光标移到左边,仍然可以输入9,另外如果输错了重新输的时候必须先把原来的内容删掉才能输入,另外请问那有好一点的时间控件,最后能有你的日期控件那么好的效果,你的那个日期控件非常好用,谢谢! 一个非常小的JQuery问题~ 为什么执行了Letf的移动,怎么把2个列表的背景都执行了? 判断子窗口? 读取单元格内容并修改格式问题 请问有无代码可以清除用户的cookies? JavaScript验证文本框输入问题 xmphttp控件如何实现 post 数据 ??????????????????????? 请教怎样动态为变量赋值(想用eval函数) 关于浏览器窗口自动关闭?? 前端js压缩图片 关于函数window.open()函数 我想做一棵不同寻常的二杈树(金字塔形的),高手给指点一下吧
function regInputRestriction(oObj,reg,isChinese)
{
function regInput(obj, reg, inputStr)
{
var docSel = document.selection.createRange();
if (docSel.parentElement().tagName != "INPUT")
return false;
oSel = docSel.duplicate();
oSel.text = "";
var srcRange = obj.createTextRange();
oSel.setEndPoint("StartToStart", srcRange);
var str = oSel.text + inputStr + srcRange.text.substr(oSel.text.length);
if(reg.test(str))
{
if(parseInt(str)>=0 && parseInt(str)<59)
return true;
else
return false;
}
else
return false;
}
//限制输入法是否允许打开
if(isChinese == null)
isChinese = false;
if(isChinese)
oObj.style.imeMode = "auto";
else
oObj.style.imeMode = "disabled";
//注册事件
oObj.onkeypress = function()
{
return regInput(this,reg,String.fromCharCode(event.keyCode));
}
oObj.onpaste = function()
{
return regInput(this,reg,window.clipboardData.getData('Text'));
}
oObj.ondrop = function()
{
return regInput(this,reg,event.dataTransfer.getData('Text'));
}
}
</SCRIPT>
<BODY onLoad="regInputRestriction(document.all.txt,/^\d*$/)">
<INPUT id="txt">
</BODY>
onkeypress="return cc(59)"
onpaste="return !clipboardData.getData('text').match(/\D/)"
ondragenter="return false"
style="ime-mode:Disabled"
> 只能输入 0-59 之间的数字
<script language="JavaScript">
function cc(n)
{
var k = window.event.keyCode;
var s = window.event.srcElement.value + String.fromCharCode(k);
return((k >=48 && k <=57) && parseInt(s, 10) >= 0 && parseInt(s, 10) <= n);
}
</script>对于这种时间的输入建议用时间控件来做
谢谢你写的函数,但你的函数只能用于顺序输入的时候可以判断,如先在文本框中输入1,再把光标移到左边,仍然可以输入9,另外如果输错了重新输的时候必须先把原来的内容删掉才能输入,另外请问那有好一点的时间控件,最后能有你的日期控件那么好的效果,你的那个日期控件非常好用,谢谢!