Struts2中如何将验证的错误信息用提示框的形式显示出来?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Struts2中如何将验证的错误信息用提示框的形式显示出来?相关的知识,希望对你有一定的参考价值。

你好,这个只能通过js来实现。追问

JS 那给说下呗 !

追答

比如登录验证,如过用户名不存在时,会返回一个错误的提示信息,你将这个错误信息用js捕获到,alert一下就行了。

追问

js应该怎么样捕获呢 能给哥例子吗?

追答

/*
开发步骤:
1.创建XMLHttpRequest对象
2.打开和服务器的连接
3.发送数据
4.接收服务器端的响应
*/

//创建XMLHttpRequest对象
function ajaxFunction()
var xmlHttp ;
try //FireFox
xmlHttp = new XMLHttpRequest() ;
catch(e)
try //IE
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP") ;
catch(e)


return xmlHttp ;


window.onload=function()
document.getElementById("check").onclick=function()
var username=document.getElementById("username").value;
// 1.获取XMLHttpRequest对象
var xmlReq = ajaxFunction() ;

// 2.接收服务器端的响应
xmlReq.onreadystatechange=function()
// alert(xmlReq.status) ;
// alert(xmlReq.readyState) ;
if(xmlReq.readyState == 4)
//200 成功 304 文件没有被修改
if(xmlReq.status ==200 || xmlReq.status == 304)
// alert("成功") ;
//接收文本格式数据(服务器返回)
var data = xmlReq.responseText ;
//document.getElementById("check").display=none;
document.getElementById("msg").innerhtml=data ;




// 3.打开和服务器的连接
/*
* open(method,url,asynch)
* method 请求参数 get post
* url 请求地址 boolean
* asynch 请求是否要异步传输
*/

xmlReq.open("post","CheckServlet" ,true) ;
xmlReq.setRequestHeader("Content-Type","application/x-www-form-urlencoded") ;

// 4.发送数据
/*
* 若选用的是GET请求,则不会发送任何数据,给send方法传递null即可
*/
xmlReq.send("username="+username) ;

追问

要是有些人将javascript消除掉了 那岂不是就危险了!

追答

呵呵,放心吧,现在哪个网站上没有js啊,不会的。

参考技术A <html>
<head>
<script type="text/javascript">
function func(p)
var pp=p.value;
if(pp.indexOf("@")==-1)
document.getElementById("mesg").innerHTML="邮箱格式不正确";
p.focus()
else
mesg.innerHTML="";





</script>
</head>

<body>
输入电子邮箱:<br>
<input type="text" id="emil" onblur="func(this)"/>
<span id="mesg" name="a" style="color:red"></span>
<br>
</body>
</html>
参考技术B ajax 调用一个函数 吧返回值 用提示框写出来就行了

解决ssh中使用struts2验证框架提示错误后正确无法提交的问题

struts和spring整合,因为action由spring进行管理,需要在spring配置文件中设置相对应的action的属性scope="prototype",绝对不能用默认值scope="singleton",设置成scope="prototype"相当于每次都会去new一个实例,否则用一个实例去去处理所有的请求,就会发生例如验证的时候第一次验证失败,之后正确也不能提交的情况。 要如下设置:

<bean id="delUserAction" class="com.zpj.action.delUserAction" scope="prototype">
    <property name="userService" ref="userService"></property>
</bean

以上是关于Struts2中如何将验证的错误信息用提示框的形式显示出来?的主要内容,如果未能解决你的问题,请参考以下文章

struts2 登陆时怎样在本页面提示密码输入错误啊??(用验证框架),望给出例子!!

struts2如何实现弹出action返回的错误信息。

struts2 action在前台显示信息提示

gin框架自定义验证错误提示信息

struts2 validate手动验证

jquery validate 弹窗提示错误怎么弄?