SSH+Ajax实现用户名重复检查(二)

1、另外一种更常用的js表达方式:

var user = {
    inintEvent: function(){
        $("input[name=‘user.User_LogName‘]").unbind("blur"); /*移动开输入框的时候就会响应,user.User_LogName为输入框的名字*/
        $("input[name=‘user.User_LogName‘]").bind("blur", function(){
            user.checkUser($(this).val());
        });
    }, 

    checkUser:function(logname){
        var parameter = {
            logname:logname/*入参,为什么用这样表示,形参:实参?*/
        };

$.ajax({
  url:"userJSON_checkname.action",//这里写你提交的action
  type:"post",
  data:{"logname":logname,"pid":5},//这里是你提交的参数,可以写很多
  dataType:"text",//数据格式
  cache: false,
  async: false,
  success:function(data){//这里是你返回的数据
    if(data=="\"ok\""){ /*注意这里的双引号写法*/
      $("#message").text("该用户名可用");
      $("#message").css("color","blue");
    }else{
      $("#message").text("该用户名不可用");
      $("#message").css("color","red");
    }
  },

  error:function(){
      alert("获取用户信息失败,请联系管理员!");
  }
})


    }
};
/*启动页面的时候绑定动作绑定*/
$(document).ready(function(){
    user.inintEvent(); /*绑定到用户名输入框*/
}); 

这里要注意的是返回值data的格式,在chrome设置Javascript断点观察到的返回值明显不同

2、传参数中的datatype尤其需要注意,有以下几种格式

•"xml": 返回 XML 文档,可用 jQuery 处理。
•"html": 返回纯文本 HTML 信息;包含的 script 标签会在插入 dom 时执行。
•"script": 返回纯文本 JavaScript 代码。不会自动缓存结果。除非设置了 "cache" 参数。注意:在远程请求时(不在同一个域下),所有 POST 请求都将转为 GET 请求。(因为将使用 DOM 的 script标签来加载)
•"json": 返回 JSON 数据 。
•"jsonp": JSONP 格式。使用 JSONP 形式调用函数时,如 "myurl?callback=?" jQuery 将自动替换 ? 为正确的函数名,以执行回调函数。
•"text": 返回纯文本字符串

详细说明参考文档:http://www.w3school.com.cn/jquery/ajax_ajax.asp

时间: 2024-10-16 21:16:48

SSH+Ajax实现用户名重复检查(二)的相关文章

SSH+Ajax实现用户名重复检查

1.struts.xml设置 <package name="default" namespace="/" extends="json-default"><!--用ajax要此extends--> <action name="userJSON_checkname" class="ssh.action.UserAction" method="checkName"

使用原生Ajax进行用户名重复的检验

title: 使用原生Ajax进行用户名重复的检验(一) date: 2018-10-21 17:35:15 tags: [JavaScript,Ajax] --- Ajax的复习 距离刚开始学ajax那会有一段时间了,然后用得又比较少.都有些生疏了呢 ̄へ ̄,现在刚好要实现一个用Ajax检验重复的功能,顺便复习一下Ajax. 关于Ajax 作用 :通过Ajax可以无需更新整个网页,而只更新部分内容,优化用户体验: 原理: AjaxEngine, 通常使用XMLHtttpRequest对象与服务器

使用ajax验证用户名重复

继上次的用户注册登录案例之后,对其中的部分功能再做进一步改进.上一版中用户提交表单后才对用户名进行校验,虽然做了回显,但还是感觉功能弱了些.为了能有更好用户体验,不是在用户提交表单后才给提示,而是在用户输入用户名后就立即对该用户名进行数据库校验,经过晚上的测试现在可以使用纯js版和jquery版. 准备工作,先编写好验证用户名重复的后台Servlet程序,然后在jsp或html中使用js对用户名进行验证,当用户输入用户名文本框推动焦点时立即触发验证.下面是jquery代码. <%@ page l

使用Ajax完成用户名异步校验--【SSH】

1.事件触发--onblur <td><!-- onblur用户离开输入框的时候执行 --> <input type="text" id="username" name="username" class="text" maxlength="20" onblur="checkUsername()"> <span id="span1&quo

JS判定注册表单的几个方式 及 Ajax进行用户名存在判定

最近感觉不赶紧把代码逻辑记一下梳理一下,再做的时候就容易进入"逻辑误区". 有个表单,简单点. <!DOCTYPE html> <!-- 注册表单验证,用户名格式(未加入Ajax)密码两次相同,则可提交 --> <html> <head> <meta charset="UTF-8"> <!-- 实现form表单验证及跳转action --> <title>JS2_form表单验证&l

Django框架进阶6 多对多三种创建方式, Ajax, Content-Type前后端传输数据编码格式, Ajax发送文件数据, django内置的序列化功能, Ajax结合sweetalert实现删除二次确认, 批量插入数据, 自定义分页器, ajax结合sweetalert实现删除二次确认

多对多三种创建方式 1.全自动(较为常用) class Book(models.Model): title = models.CharField(max_length=32) authors = models.ManyToManyField(to='Author') # orm就会自动帮你创建第三张表 class Author(models.Model): name = models.CharField(max_length=32) ''' 好处:第三张表自己创建 不足之处:第三张表无法扩展额外

ajax验证用户名和密码

1 var user = form.name.value; 2 var password = form.password.value; 3 var url = "chkname.php?user="+user+"&password="+password;//以前只知道ajax用于对用户名的检测,原来还可以对密码进行检测. 4 xmlhttp.open("GET",url,true); 5 xmlhttp.onreadystatechang

PHP去掉数组重复值二种方法实例

PHP两种去掉数组重复值的方法,分别使用foreach方法和array_unique方法. 去除一个数组中的重复值,可以使用foreach方法,也可以使用array_unique方法. <?php $arrF = array(); $arrS = array(); $intTotal = 100; $intRand = 10; for($i=0; $i < $intTotal; $i++) { $arrF[] = rand(1, $intRand); $arrS[] = rand(1, $in

SSH三大框架注解整合(二)

5.使用spring注解注入service,DAO action: @ParentPackage(value = "struts-default") @Namespace("/") @Controller @Scope("prototype") public class BookAction extends ActionSupport implements ModelDriven<Book>{ //模型驱动 public Book b