我写这段代码是为了验证js的用户输入,但它似乎没有输入脚本。我认为问题是"onkeyup“对我不起作用。
<script language="JavaScript">
var flag = false ;
function checkCat(value)
{
var validate = /^[a-z]{3,15}$/i ;
if( value.length ==0 )
{
re = '';
flag = false ;
}
else if(!validate.test(value))
{
flag = false ;
re = 'Invalid';
col = 'red' ;
}
else
{
flag = true ;
re = 'Valid';
col = 'green' ;
}
document.getElementById('print').style.color = col ;
document.getElementById('print').innerHTML = re ;
}
function checkForm ()
{
document.catForm.JSEnabled.value="TRUE";
return flag ;
}
</script>
上面的代码在头部,下面的代码在身体部分
<form method = 'post' name = 'catForm' onsubmit="return checkForm();" >
<input type="text" name = 'cat' placeholder="Category name" onkeyup='checkCat(this.value)'> <span id='print'></span> <br/>
<input type='hidden' name='JSEnabled' value='FALSE' />
<input id="submit" type="submit" name = 'sb' value="Add A New Category" >
发布于 2020-05-08 02:16:25
我甚至用HTA扩展测试了它,一切都很好!
<!DOCTYPE html>
<html>
<title>validation using js is not updating to span</title>
<head>
<script language="JavaScript">
var flag = false ;
function checkCat(value)
{
var validate = /^[a-z]{3,15}$/i ;
if( value.length ==0 )
{
re = '';
flag = false ;
}
else if(!validate.test(value))
{
flag = false ;
re = 'Invalid';
col = 'red' ;
}
else
{
flag = true ;
re = 'Valid';
col = 'green' ;
}
document.getElementById('print').style.color = col ;
document.getElementById('print').innerHTML = re ;
}
function checkForm ()
{
document.catForm.JSEnabled.value="TRUE";
return flag ;
}
</script>
</head>
<body>
<form method = 'post' name = 'catForm' onsubmit="return checkForm();" >
<input type="text" name = 'cat' placeholder="Category name" onkeyup='checkCat(this.value)'> <span id='print'></span> <br/>
<input type='hidden' name='JSEnabled' value='FALSE' />
<input id="submit" type="submit" name = 'sb' value="Add A New Category" >
</body>
</html>
发布于 2020-05-08 02:05:35
看起来它像预期的那样工作:
<!DOCTYPE html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
</head>
<body>
<form method='post' name='catForm' onsubmit="return checkForm();">
<input type="text" name='cat' placeholder="Category name" onkeyup='checkCat(this.value)'> <span id='print'></span> <br />
<input type='hidden' name='JSEnabled' value='FALSE' />
<input id="submit" type="submit" name='sb' value="Add A New Category">
</form>
<script>
var flag = false;
function checkCat(value) {
var validate = /^[a-z]{3,15}$/i;
if (value.length == 0) {
re = '';
flag = false;
}
else if (!validate.test(value)) {
flag = false;
re = 'Invalid';
col = 'red';
}
else {
flag = true;
re = 'Valid';
col = 'green';
}
document.getElementById('print').style.color = col;
document.getElementById('print').innerHTML = re;
}
function checkForm() {
document.catForm.JSEnabled.value = "TRUE";
return flag;
}
</script>
</body>
</html>
发布于 2020-05-08 02:06:32
我在这里进行了测试:
`https://jsfiddle.net/v2b6sqcx/`
它对我来说运行得很好
https://stackoverflow.com/questions/61670665
复制相似问题