我有两个HTML格式的文本字段,当点击一个按钮时,我需要检查它们是否为空。
但我有一个工作,我的第二个工作不起作用,
这里是代码:
<!DOCTYPE html ">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>appLounge webService</title>
<link rel="stylesheet" type="text/css" media="all" href="css/reset.css" />
<link rel="stylesheet" type="text/css" media="all" href="css/text.css" />
<link rel="stylesheet" type="text/css" media="all" href="css/960.css" />
<link rel="stylesheet" type="text/css" media="all" href="css/demo2.css" />
<script type='text/javascript'>
function notEmpty(login, password, helperMsg){
if(login.value.length == 0){
alert(helperMsg);
login.focus();
return false;
}
if(password.value.length == 0){
alert(helperMsg);
password.focus();
return false;
}
return true;
}
</script>
</head>
<body>
<div class="container_12">
<!-- login data -->
<div id="header" class="grid_12" style="background : url(img/login.png) no-repeat; background-size: 100%; height: 900px;" >
<form>
<div id="fieldLogin1">
<input type="text" id='req1' name="userName" style="width:530px; height:44px" placeholder="UserName"; /><br />
</div>
<div class="clear"> </div>
<div id="fieldLogin2">
<input type="text" id='req2' name="password" style="width:530px; height:44px" placeholder="Password" />
</div>
<div class="clear"> </div>
<div id="checkBoxRememberMe">
<input type="checkbox" name="remember" value="rememberYes" /> <br />
<form>
<input type='button'
onclick="notEmpty(document.getElementById('req1'), 'req2','Please Enter a Value')"
value='Check Field' />
</form>
</div>
</div> <!-- end .grid_12 -->
<div class="clear"> </div>
</form>
</div>
<!-- end .container_12 -->
</body>
</html>
我试过了
onclick="notEmpty(document.getElementById('req1'), ('req2'),'Please Enter a Value')"
同样,但也不起作用,这是问题吗?
非常感谢!
答案 0 :(得分:3)
onclick="notEmpty(document.getElementById('req1'), 'req2','Please Enter a Value')"
value='Check Field' />
实际应该是
onclick="notEmpty(document.getElementById('req1'), document.getElementById('req2'),'Please Enter a Value')"
value='Check Field' />
编辑(由@dante建议):
以下代码可以更具可读性:
onclick="notEmpty('req1', 'req2', 'Please Enter a Value')"
value='Check Field' />
和
function notEmpty(loginId, passwordId, helperMsg) {
var login = document.getElementById(loginId);
if (!login.value.length) {
alert(helperMsg);
login.focus();
return false;
}
var password = document.getElementById(passwordId);
if (!password.value.length) {
alert(helperMsg);
password.focus();
return false;
}
return true;
}
(在旁注中,尽可能习惯使用===
而不是==
,所以你不能成功地结束(哼...)将布尔值与{{1}进行比较一天。它也快一点:))
答案 1 :(得分:2)
您将字符串作为第二个参数传递给not Empty
。试试这个:
onclick="notEmpty(document.getElementById('req1'), document.getElementById('req2'),'Please Enter a Value')"
答案 2 :(得分:2)
调用该函数时,您在密码字段中忘记了document.getElementById()
:
onclick="notEmpty(document.getElementById('req1'), document.getElementById('req2'),'Please Enter a Value')"