要求在“行数”这一栏中只能输入2,3,4 这三个数字,代码如下:<script language="javascript">
function checknum(){
var rownum=document.getElementById("tf_module_rownum");
alert(rownum);
var rownum_val=rownum.value;
regnum="^{1}[2-4]$";
if (regnum.test(rownum_val)!=true){
alert('输入行数只能是2-4行');
rownum.value=2;
}
}
</script>然后设置对应文本框在失去焦点的时候触发这个函数:
<td width="27%"><input type="text" name="tf_module_rownum" onBlur="checknum()"></td>经测试,正则表达式是正确的,但在运行时,却在这一行 if (regnum.test(rownum_val)!=true){
出现“对象不支持此属性或方法”的错误,不知是什么问题,盼请各位JS高手帮忙解决,小弟多谢了!
function checknum(){
var rownum=document.getElementById("tf_module_rownum");
alert(rownum);
var rownum_val=rownum.value;
regnum="^{1}[2-4]$";
if (regnum.test(rownum_val)!=true){
alert('输入行数只能是2-4行');
rownum.value=2;
}
}
</script>然后设置对应文本框在失去焦点的时候触发这个函数:
<td width="27%"><input type="text" name="tf_module_rownum" onBlur="checknum()"></td>经测试,正则表达式是正确的,但在运行时,却在这一行 if (regnum.test(rownum_val)!=true){
出现“对象不支持此属性或方法”的错误,不知是什么问题,盼请各位JS高手帮忙解决,小弟多谢了!
regnum对象这样进行初始化!
var regnum=/^{1}[2-4]$/;提示:unexpected qunatifier
这又是怎么回事? 这个正则表达式测试时正常的
<html>
<head>
<title>提交表单</title>
<script src="jquery-1.3.2.min.js" ></script>
<script>
$(function(){
$("#tf_module_rownum").blur(function(){
regnum=/^[2-4]$/;
alert(regnum.test($(this).text()));
})
})
</script>
</head>
<body>
<input type="text" id="tf_module_rownum" />
</body>
</html>
regnum="^{1}[2-4]$";
if (!/[2-4]{1}/g.test(rownum_val))
{
//do something
}
2 /^{1}[2-4]$/这是啥意思呢?{m}表示的是匹配前一项m次,不是分组吧,分组应该是这样写的/^([2-4])$\1/,不建议这么写,还是简单点好。
3 rownum_val确定是字符串么??有值么????
<script text="text/javascript">
function checknum(){
var rownum=document.getElementById("tf_module_rownum");
var rownum_val=rownum.value;
if (!/^[2-4]$/.test(rownum_val)){
alert('输入行数只能是2-4行');
rownum.focus();
rownum.select();
return false;
}
}
</script>