让textbox失去焦点的问题 我有一个textbox控件,当用户在里面输入数字是,必须是10的倍数或空,如果不是,则光标不离开,还在此控件中 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 JS 验证onblur 失去焦点 好像是这个 你可以这么来 当失去焦点的时判断文本是否符合你的条件 不符合就让textbox重新获得焦点 反之往下面走 jq$("#txt").blur(function(){ var val=$.trim($(this).val()); if((val!=""&&isNaN(parseInt(val)))||parseInt(val)%10!=0)) { $(this).focus(); }}) 我就是用js写了一个验证,在textbox的onblur事件里,但是当它不符合我的要求时,还是会跳到下一个textb里面去 手写的,没测试,有问题自己改改 function IsNumber() { var reg = /^[0-9]*$/; var num = $.trim($("#txtNum").val()); if (num.length == 0) { alert("请输入"); $("#txtNum").focusin(); return false; } if (!reg.test(num)) { alert("只能输入整数"); $("#txtNum").focusin(); return false; } else { var number = parseInt(num); if (number % 10 == 0) { return true; } else { alert("输入整数不是10的倍数"); $("#txtNum").focusin; return false; } } } <asp:TextBox ID="txtNum" runat="server" onkeyup="IsNumber();"></asp:TextBox> <script type="text/javascript"> $(function () { $("#txt").blur(function () { var val = $.trim($("#txt").val()); var flag = false; if ((val != "" && isNaN(parseInt(val))) || (!isNaN(parseInt(val)) && parseInt(val) % 10 != 0)) { $("#txt").focus(); return false; } }) }) </script>这个写法兼容IE,不兼容火狐。 解决兼容性的方法是,将focus的方法放在setTimeout里面 <script type="text/javascript"> $(function () { $("#txt").blur(function () { var val = $.trim($("#txt").val()); var flag = false; if ((val != "" && isNaN(parseInt(val))) || (!isNaN(parseInt(val)) && parseInt(val) % 10 != 0)) { setTimeout(function () { $("#txt").focus(); }, 1); return false; } }) }) </script> SqlDataReader.HasRows的正确用法? GRIDVIEW更新操作问题 新人 关于 代码问题 还是浏览器问题 还是哪里没设置对? 服务端控件visible属性问题 连接SQL Server 2005 请问是不是用codebehind写的aspx文件在租的服务器上不能运行 读取文件的问题 存储过程问题 如何将字符串转换成数组 关于ASP.NET连接Access的问题! Razor 布局取代iFrame的问题 OpenOffice 将文件转化成pdf
var val=$.trim($(this).val());
if((val!=""&&isNaN(parseInt(val)))||parseInt(val)%10!=0))
{
$(this).focus();
}
})
var reg = /^[0-9]*$/;
var num = $.trim($("#txtNum").val());
if (num.length == 0) {
alert("请输入");
$("#txtNum").focusin();
return false;
}
if (!reg.test(num)) {
alert("只能输入整数");
$("#txtNum").focusin();
return false;
}
else {
var number = parseInt(num);
if (number % 10 == 0) {
return true;
}
else {
alert("输入整数不是10的倍数");
$("#txtNum").focusin;
return false;
}
}
} <asp:TextBox ID="txtNum" runat="server" onkeyup="IsNumber();"></asp:TextBox>
$(function () {
$("#txt").blur(function () {
var val = $.trim($("#txt").val());
var flag = false; if ((val != "" && isNaN(parseInt(val))) || (!isNaN(parseInt(val)) && parseInt(val) % 10 != 0)) {
$("#txt").focus();
return false;
}
})
})
</script>
这个写法兼容IE,不兼容火狐。
<script type="text/javascript">
$(function () {
$("#txt").blur(function () {
var val = $.trim($("#txt").val());
var flag = false; if ((val != "" && isNaN(parseInt(val))) || (!isNaN(parseInt(val)) && parseInt(val) % 10 != 0)) {
setTimeout(function () { $("#txt").focus(); }, 1);
return false;
}
})
})
</script>