【web开发】:利用AJAX查询判断用户名是否重复

来源

在项目中我们在输入界面会遇到这样的问题,我们要输入的数据尤其是主键不能与数据库里面的数据重复,因此我们需要ajax查询来跟数据库里面的数据比对,进而可以知道该数据是否重复

举个很简单的例子,比如说是 用户ID,用户ID是唯一的,所以不能重复,下一个例子我们就关于用户ID的AJAX查询的详细过程

详细过程

JSP页面提交AJAX查询请求, controller层提供相关数据的比对,然后返回比对值给JSP页面,在JSP页面对比对结果进行然后发出相应的响应

代码

JSP页面的:

将数据取出并且传进neiding控制层里面的repititionname方法去处理,其中responseData是从控制层返回的数据

//在这里写ajax查询判断项目ID是否重复
            var login_name = document.getElementById("PROJECT_ID").value;
            var JSONObject= {
                "PROJECT_ID":login_name
            };
            $.ajax({
                type: 'POST',url: "neiding/repititionname",dataType: 'text',async:false,data:JSONObject,success: function (responseData) {
                    var x = parseInt(responseData)
                    if(x==0){
                        $("#PROJECT_ID").tips({
                            side:3,msg:'项目ID重复',bg:'#AE81FF',time:2
                        });
                        $("#PROJECT_ID").focus();
                    }
                    else{
                        $("#Form").submit();
                        $("#zhongxin").hide();
                        $("#zhongxin2").show();
                    }
                },error: function (XMLHttpRequest,textStatus,errorThrown) {//请求失败处理函数
                    //console.log("请求失败,无法获取分组数据");
                    alert("失败了");
                }
            });

控制层代码
数据库查询出数据跟JSP调出来的项进行比对,相同就返回0,不同就返回1,这样的JSP页面就知道了。

/**保存 * @param * @throws Exception */
    @RequestMapping(value="/repititionname")            //这里写控制代码,要完成很多事情
    public @ResponseBody void login_name(HttpServletRequest request,HttpServletResponse response) throws Exception{
        String LOGIN_NAME= request.getParameter("PROJECT_ID");
        System.out.println("测试策划师"+LOGIN_NAME);
        PageData pd = new PageData();
        pd = this.getPageData();
        List<PageData>  varList = neidingService.listAll(pd);
        int flag = 1;
        for(PageData s:varList){
            if(s.getString("PROJECT_ID").equals(LOGIN_NAME)){
                System.out.println("NAME+"+s.getString("LOGIN_NAME"));
                response.setCharacterEncoding("UTF-8");
                response.getWriter().write("0");
                flag = 0;
            }
        }
        if(flag==1) {
            response.setCharacterEncoding("UTF-8");
            response.getWriter().write("1");
        }
    }

效果

相关文章

JS原生Ajax操作(XMLHttpRequest) GET请求 POST请求 兼容性问题 利用iframe模拟ajax 实现表单提交的返回...
AJAX 每日更新前端基础,如果觉得不错,点个star吧 &#128515; https://github.com/WindrunnerMax/E...
踩坑Axios提交form表单几种格式 前后端分离的开发前后端, 前端使用的vue,后端的安全模块使用的SpringSe...
很早就听闻ajax的名声,但是却一直不知道怎么用,今天自己捣鼓了一下,竟然会用了,哈哈哈哈。 为了防止...
需要在服务器上进行哈 jquery的ajax方法: // jquery请求 $.ajax({ url: &quot;./server/slider.js...
Ajax函数封装ajax.js // Get / Post // 参数 get post // 是否异步 // 如何处理响应数据 // URL // var...