第一种 定义一个表示是否已获得焦点的变量,是一种比较优雅的方法
<html>
<head>
<title>focus</title>
<script type="text/javascript">
function checkForm(myForm) {
var msg = "";
var setFocused = false; //是否已获得焦点
if(myForm.account.value == "") {
msg += "帐号不能为空!\n";
myForm.account.focus();
setFocused = true;
}
if(myForm.password.value == "") {
msg += "密码不能为空!\n";
if(!setFocused) { //如果账号已获得了焦点 则密码不获得焦点
myForm.password.focus();
setFocused = true;
}
}
if(msg != "") {
alert(msg);
return false;
}
return true;
}
</script>
</head>
<body>
<form action="" method="post" onsubmit="return checkForm(this);">
<table>
<tr>
<td>
用户帐号
</td>
<td>
<input type="text" style="width:150px" name="account">
</td>
</tr>
<tr>
<td>
用户密码
</td>
<td>
<input type="password" style="width:150px" name="password">
</td>
</tr>
<tr>
<td colspan="2" align="center">
<input type="submit" value="登录">
<input type="reset" value="清空">
</td>
</tr>
</table>
</form>
</body>
</html>
第二种 列出所有的情况,是一种比较笨拙的方法,只有两个字段还好,要是字段多了判断起来就麻烦了。
<html>
<head>
<title>focus</title>
<script type="text/javascript">
function checkForm(myForm) {
var msg = "";
if(myForm.account.value == "") {
msg += "帐号不能为空!\n";
myForm.account.focus();
}
if(myForm.account.value != "" && myForm.password.value == "") {
msg += "密码不能为空!\n";
myForm.password.focus();
}
if(myForm.account.value == "" && myForm.password.value == "") {
msg += "帐号不能为空!\n 密码不能为空!\n";
myForm.account.focus();
}
if(msg != "") {
alert(msg);
return false;
}
return true;
}
</script>
</head>
<body>
<form action="" method="post" onsubmit="return checkForm(this);">
<table>
<tr>
<td>
用户帐号
</td>
<td>
<input type="text" style="width:150px" name="account">
</td>
</tr>
<tr>
<td>
用户密码
</td>
<td>
<input type="password" style="width:150px" name="password">
</td>
</tr>
<tr>
<td colspan="2" align="center">
<input type="submit" value="登录">
<input type="reset" value="清空">
</td>
</tr>
</table>
</form>
</body>
</html>
分享到:
相关推荐
JS 中判断文本框是否为空的两种方法 在 JavaScript 中,判断文本框是否为空是一项常见的验证操作。以下我们将介绍两种方法来实现文本框非空验证。 方法一:使用 value 属性 在 HTML 文档中,我们可以使用 `value`...
在软件开发中为了安全性,特别是那些需要用到用户名和密码登录服务端的程序,常常考虑长期无人操作,程序自动跳转到用户登录界面。判断程序是否长时间无人操作,有两个依据...本例综合这两种情况给出一个较好的解决方案
支持ASP、PHP两种脚本语言; 动态加载目录树--无限级动态加载文件目录树,所有文件、目录一目了然; 方便的在线编辑--不必通过提交页面即可保存编辑结果(支持快捷键Ctrl+S保存文件); 支持字符串全文查找...
7、新增两种伪静态网站运行方式,1是带问号,2是需要组建; 8、新增会员管理中推荐功能; 9、新增会员注册时可选择用户组,后台可指定是否开放用户组会员注册; 10、新增自定义字段中可以添加上传文件类型的字段...
7、新增两种伪静态网站运行方式,1是带问号,2是需要组建; 8、新增会员管理中推荐功能; 9、新增会员注册时可选择用户组,后台可指定是否开放用户组会员注册; 10、新增自定义字段中可以添加上传文件类型的字段...
Java聊天室的设计与实现socket 设计软件源码+WORD毕业论文文档 Java聊天室系统主要用于实现在线聊天,基本功能包括:服务端和客户端。本系统结构如下: (1)服务端: 1、能够开启和关闭服务器 2、等待着客户端从...
8.添加用户名密码判断功能。将登陆按钮的槽函数改为: void loginDlg::on_loginBtn_clicked() { if(m_ui->usrLineEdit->text()==tr("qt")&&m_ui->pwdLineEdit->text()==tr ("123456")) //判断用户名和密码是否正确 ...
国内处于垄断的QQ,业界老大哥微软的MSN都是大众关注和使用的焦点,普通老百姓也能够拥有属于自己的计算机,在平常的生活中也离不开了网络技术的支持,它是人们的生活变得十分的便利和高效,你能在网上找到自己想要...
在新版本中,这两种安全性模式下,都可以实现自动登录功能。 (4)、开发环境 v1.5及以前的老版本用AutoIt语言开发,AutoIt是解释性语言,功能和稳定性有限,并且一些防病毒软件会报警。 为了在功能和稳定性方面...
在新版本中,这两种安全性模式下,都可以实现自动登录功能。 (4)、开发环境 v1.5及以前的老版本用AutoIt语言开发,AutoIt是解释性语言,功能和稳定性有限,并且一些防病毒软件会报警。 为了在功能和稳定性方面...
采用多线程方式对指定IP地址段(或单机)进行安全漏洞检测,支持插件功能,提供了图形界面和命令行两种操作方式,扫描内容包括:远程服务类型、操作系统类型及版本,各种弱口令漏洞、后门、应用服务漏洞、网络设备...
本书是第II卷,以开发人员在项目开发中经常遇到的问题和必须掌握的技术为中心,介绍了应用Java进行桌面程序开发各个方面的知识和技巧,主要包括Java语法与面向对象技术、Java高级应用、窗体与控件应用、文件操作...
功能简介: <br> 采用多线程方式对指定IP地址段(或单机)进行安全漏洞检测,支持插件功能,提供了图形界面和命令行两种操作方式,扫描内容包括:远程服务类型、操作系统类型及版本,各种弱口令漏洞、后门、应用...
(目前只支持0和2两种情况;)(-1使用配置文件提供的设置类型) 返回值:TRUE表示成功,FALSE表示失败。 6.2开始全录像 BOOL StartRecordAllChannel(LPCTSTR lpSaveFile,long nType) 功能说明:对正在预览的所有...