登录时,当用户名或密码一项为空时,如何弹出提示框提示用户,两项都添加后再进行提交操作?

aixiaohuihuihb 2007-07-18 09:08:14
一下是代码,应如何添加?

<%@ taglib uri="/WEB-INF/struts-tiles.tld" prefix="tiles" %>
<%@ taglib uri="/WEB-INF/struts-nested.tld" prefix="nested" %>
<%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %>
<%@ taglib uri="/WEB-INF/struts-template.tld" prefix="template" %>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
<%@ page contentType="text/html; charset=GBK" %>
<html:html xhtml="true" locale="true">
<head>
<title>
login.jsp
</title>
<html:base/>
</head>
<body>
<h1>h1>
<p>
<html:form action="/loginAction.do" method="POST">

<html:text property="username"/>
<br>
<html:password property="password"/>
<br>

<html:submit property="submit" value="Submit"/><br>
<html:reset value ="Reset"/>
</html:form>
</body>
</html:html>
...全文
2077 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
aixiaohuihuihb 2007-07-18
  • 打赏
  • 举报
回复
谢谢,非常感谢各位的帮忙,谢谢!

特别谢谢bao110908(bao)(bao)、sz_dongli() !
  • 打赏
  • 举报
回复
function check() {
  var usernameText = document.getElementsByName("username")[0];
  var passwordText = document.getElementsByName("password")[0];
  // 去掉首尾的空格
  username = usernameText.value.replace(/(^\s*)|(\s*$)/g, "");
  password = passwordText.value.replace(/(^\s*)|(\s*$)/g, "");
  if(username.length==0) {
    alert("用户名不能为空!");
    usernameText.focus();
    usernameText.select();
    return false;
  }
  if(password.length==0) {
    alert("密码不能为空!");
    passwordText.focus();
    passwordText.select();
    return false;
  }
  return true;
}

把 form 和 username 的 name 属性去掉,不用加。它的名字就是 loginForm 和 username,你可以通过查看页面源代码可以看到的。


aixiaohuihuihb 2007-07-18
  • 打赏
  • 举报
回复
目前的代码:

<%@ taglib uri="/WEB-INF/struts-tiles.tld" prefix="tiles" %>
<%@ taglib uri="/WEB-INF/struts-nested.tld" prefix="nested" %>
<%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %>
<%@ taglib uri="/WEB-INF/struts-template.tld" prefix="template" %>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
<%@ page contentType="text/html; charset=GBK" %>
<html:html xhtml="true" locale="true">
<head>
<title>
login.jsp
</title>
<html:base/>
</head>
<body>
<SCRIPT type="text/javascript">

function submit1()

{
if(za.aa.value == "")
{
alert("请输入联系人姓名!");
}
}
</SCRIPT>
<h1></h1>
<p>
<html:form action="/loginAction.do" name="za" onsubmit="return submit1()" method="POST">

<html:text property="username" name="aa"/>
<br>
<html:password property="password"/>
<br>

<html:submit property="submit" value="Submit"/><br>
<html:reset value ="Reset"/>
</html:form>
</body>
</html:html>


错误提示如下:

javax.servlet.ServletException: Must specify type attribute if name is specified
org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:825)
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:758)
org.apache.jsp.login_jsp._jspService(login_jsp.java:95)
aixiaohuihuihb 2007-07-18
  • 打赏
  • 举报
回复
还是不行,我发现如果去掉 name="za" 和<html:text name="aa" property="username"/>
中的name="aa"就可以执行页面。但是去掉之后,username就没有属性名字了,根据什么做判断呢?
liujun999999 2007-07-18
  • 打赏
  • 举报
回复
za.aa.value.length==0 -> document.za.aa.value == ""
sz_dongli 2007-07-18
  • 打赏
  • 举报
回复
<%@ taglib uri="/WEB-INF/struts-tiles.tld" prefix="tiles" %>
<%@ taglib uri="/WEB-INF/struts-nested.tld" prefix="nested" %>
<%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %>
<%@ taglib uri="/WEB-INF/struts-template.tld" prefix="template" %>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
<%@ page contentType="text/html; charset=GBK" %>
<html:html xhtml="true" locale="true">
<head>
<title>
login.jsp
</title>
<html:base/>
</head>
<body>
<script type="text/javascript"> -------------------------------增加的
function submit1()
{


if(za.aa.value==""){
alert("请输入发送信息内容");
za.aa.focus();
return false;
}
}
</script>
<h1></h1>
<p>
<html:form action="/loginAction.do" name="za" method="POST">

<html:text name="aa" property="username"/>
<br>
<html:password property="password"/>
<br>

<html:submit property="submit" onclick="return submit1()" value="Submit"/><br> ----增加的submit1()"

<html:reset value ="Reset"/>
</html:form>
</body>
</html:html>
aixiaohuihuihb 2007-07-18
  • 打赏
  • 举报
回复
谢谢各位,一下是我的代码,javascript代码,在提交按钮上写的,但是报错,请各位劳神看一下!


<%@ taglib uri="/WEB-INF/struts-tiles.tld" prefix="tiles" %>
<%@ taglib uri="/WEB-INF/struts-nested.tld" prefix="nested" %>
<%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %>
<%@ taglib uri="/WEB-INF/struts-template.tld" prefix="template" %>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
<%@ page contentType="text/html; charset=GBK" %>
<html:html xhtml="true" locale="true">
<head>
<title>
login.jsp
</title>
<html:base/>
</head>
<body>
<SCRIPT> -------------------------------增加的
function submit1()
{


if(za.aa.value.length==0){
alert("请输入发送信息内容");
za.aa.focus();
return false;
}
}
</SCRIPT>
<h1></h1>
<p>
<html:form action="/loginAction.do" name="za" method="POST">

<html:text name="aa" property="username"/>
<br>
<html:password property="password"/>
<br>

<html:submit property="submit" onclick="submit1()" value="Submit"/><br> ----增加的submit1()"

<html:reset value ="Reset"/>
</html:form>
</body>
</html:html>
lingar 2007-07-18
  • 打赏
  • 举报
回复
一个例子
function onLogin() {
form = document.logonForm;
if(form.userid.value==""){
alert("用户名不能为空!")
form.userid.focus();
return false;
}
if(form.passwd.value==""){
alert("用户密码不能为空!")
form.passwd.focus();
return false;
}
document.logonForm.submit();
}
aixiaohuihuihb 2007-07-18
  • 打赏
  • 举报
回复
我试验了,提示错误!

在客户端判断,是否可以加javascript代码,在提交按钮上写?
sz_dongli 2007-07-18
  • 打赏
  • 举报
回复
在WEB-INF下 新建个 validation.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE form-validation PUBLIC "-//Apache Software Foundation//DTD Commons Validator Rules Configuration 1.0.1//EN" "validator_1_0_1.dtd" >
<form-validation>
<formset>
<form name="loginForm">
<field property="username" depends="required">
<arg0 key="loginForm.username"/>
</field>
<field property="password" depends="required">
<arg0 key="loginForm.password"/>
</field>
</form>
</formset>
</form-validation>

在src 下 新建 个 Resources.properties 放提示语句

loginForm.username = The user name
loginForm.password= The user password

# Struts Validator Error Messages
errors.required={0} is required.
errors.minlength={0} can not be less than {1} characters.
errors.maxlength={0} can not be greater than {1} characters.
errors.invalid={0} is invalid.

errors.byte={0} must be a byte.
errors.short={0} must be a short.
errors.integer={0} must be an integer.
errors.long={0} must be a long.
errors.float={0} must be a float.
errors.double={0} must be a double.

errors.date={0} is not a date.
errors.range={0} is not in the range {1} through {2}.
errors.creditcard={0} is an invalid credit card number.
errors.email={0} is an invalid e-mail address.
aixiaohuihuihb 2007-07-18
  • 打赏
  • 举报
回复
在客户端判断,如何判断呢?
Norris_Zhang 2007-07-18
  • 打赏
  • 举报
回复
也可以直接写javascript代码,在提交按钮上写
<input type="submit" onclick="return xxx();"/>


<script>
function xxx(){
.....
}
</script>
grady0926 2007-07-18
  • 打赏
  • 举报
回复
看你是在客户端还是服务器端判断咯!
aixiaohuihuihb 2007-07-18
  • 打赏
  • 举报
回复
我把用验证框架直接加在我的JSP页面中吗?上面的代码怎么用?
zhangjg2124 2007-07-18
  • 打赏
  • 举报
回复
用JS在页面判断是否为空就行了
qianzongli 2007-07-18
  • 打赏
  • 举报
回复
up
henry1451 2007-07-18
  • 打赏
  • 举报
回复

楼上正解.
sz_dongli 2007-07-18
  • 打赏
  • 举报
回复
<body>
<h1>h1>
<p>
<html:form action="/loginAction.do" method="POST" onsubmit="return validateLoginForm(this)">

<html:text property="username"/>
<br>
<html:password property="password"/>
<br>

<html:submit property="submit" value="Submit"/><br>
<html:reset value ="Reset"/>
</html:form>
<html:javascript formName="loginForm"/>
</body>
</html:html>


<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE form-validation PUBLIC "-//Apache Software Foundation//DTD Commons Validator Rules Configuration 1.0.1//EN" "validator_1_0_1.dtd" >
<form-validation>
<formset>
<form name="loginForm">
<field property="username" depends="required">
<arg0 key="loginForm.username"/>
</field>
<field property="password" depends="required">
<arg0 key="loginForm.password"/>
</field>
</form>
</formset>
</form-validation>

用验证框架!!

81,120

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧