JSP如何实现,根据数据库内容验证登录信息是否存在
<form action="${ctx }/add/addBlock.do" name="addBlock" method="post">
                <ul class="addUl">
                    <li class="addLi1">
                        版块名称:
                    </li>
                    <li class="addLi2">
                        <input name="blockName" id="blockName" maxlength="15" />


                    </li>
                </ul>
                <ul class="addUl">
                    <li class="addLi1">
                        客户代码:
                    </li>
<ul class="addUl">
                    <li class="addLi1">
                        <input type="reset" value="重填" />
                    </li>
                    <li class="addLi2">
                        <input type="submit" value="提交" />
                    </li>
                </ul>
            </form>

 怎样在界面中加入一个JS的功能,当光标离开版块名称这个输入栏后,就会自动验证数据库里是否存在这个内容,如果存在就在提示不能这样做。
本人才学习的WEB开发,所以会有一些地方不太懂,所以请回答的时候说详细一些。非常感谢。  

6个回答

1.在 标签中加上onblur事件; 如:onblur="validBlockName(this.value)"

2.编写ajax代码:

var xmlhttp; function validBlockName(value){ if(window.ActiveXObject){ xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); }else if(window.XMLHttpRequest){ xmlhttp = new XMLHttpRequest(); } var url = ajaxUrl + "?blockName=" + value; xmlhttp.open("GET",url,true); xmlhttp.onreadystatechange = callback; xmlhttp.send(null); } function callback(){ if (xmlhttp.readyState == 4){ if (xmlhttp.status == 200){ if(xmlhttp.responseText == "true"){ //如果存在 } else{ //如果不存在 } } } }
chawei784533
chawei784533 不对,返回值是String类型的 你把返回结果声明一个全局的变量,判断赋值!再在get方法上加上@JSON,前台可以取到这个值
接近 8 年之前 回复
shijiong1989
shijiong1989 public boolean findBlock(){ try { BbsBlockService bbsBlockService = (BbsBlockService) ServiceFactory .getService("bbsBlockService"); String hql = " select blockName from BbsBlock b where b.userName like '"+ userName +"'"; cList = bbsBlockService.getBbsBlocksBySql(hql, null); if(cList == null); return true; } catch (Exception e) { debugLogger.writeErrorLog(e); return false; } } action的返回值是这样的吗
接近 8 年之前 回复
chawei784533
chawei784533 你用的struts1吧,我都忘了怎么配置了,struts2的话你可以用json插件配置 <package name="ajax" extends="json-default" namespace="/json"> <result-types> <result-type name="json" class="org.apache.struts2.json.JSONResult"/> </result-types> <interceptors> <interceptor name="json" class="org.apache.struts2.json.JSONInterceptor"/> </interceptors> <action name="getURL" class="com.didatour.action.system.WeiboAction"> <result type="json" /> </action> </package> 需要struts2-json-plugin的jar包
接近 8 年之前 回复
shijiong1989
shijiong1989 写好了action要怎么配置xml呢
接近 8 年之前 回复
chawei784533
chawei784533 ajaxUrl是你配置的url,处理验证逻辑的action或servlet
接近 8 年之前 回复
shijiong1989
shijiong1989 var url = ajaxUrl + "?blockName=" + value; 这个ajaxUrl是怎么得到的,要导入包吗
接近 8 年之前 回复
chawei784533
chawei784533 3.后台获取blockName去数据库判断是否存在,并返回判断值
接近 8 年之前 回复

力推:jquery validate 验证
参见连接:
[url]http://blog.csdn.net/kebing1990/article/details/6792913[/url]

建议使用jquery的异步验证方式:
$.("#blockName").blur(function(){//给那个输入框注入一个焦点离开事件
$.ajax({
url:"voidlate.action",//后台验证的方法,自定义
data:{"blockName":$("#blockName").val()},//后台要生成一个blockName的属性并生成set和get方法
type:"post",提交方式
success:function(data){
if(data){
//不能这样做
}else{
//可以这样做
}

}
});

});

zhouhua0104
想成为工程师的码农 适应jquery需要引入jquery的包
接近 8 年之前 回复

这个是需要用到ajax的,知道很重要,可是还没有用得太好呢

这个是需要用到ajax的,知道很重要,可是还没有用得太好呢

这个呢还是自己写一个吧 通常都是用的ajax

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐