<style type="text/css">
.tishi{
color: red;
}
</style>

  

<script type="text/javascript">
function getAjax(){
var xhr;
if(window.XMLHttpRequest){
xhr = new XMLHttpRequest();
} xhr.open("get", "getAjax03", true);
xhr.onreadystatechange = function(){
var jsonObj;
if(xhr.readyState==4){
jsonObj = JSON.parse(xhr.responseText);//可以将json字符串转换成json对象,用在前台js中。
alert("json对象:"+jsonObj);
alert("json字符串"+xhr.responseText);
alert("json字符串,使用stringify(jsonObj)"+JSON.stringify(jsonObj));//可以将json对象转换成json对符串 ,用在action中(java代码中)。
alert("姓名:"+jsonObj.name);
alert("性别:"+jsonObj.sex);
}
}
xhr.send(null);
}
function checkName(){
var xhr;
if(window.XMLHttpRequest){
xhr = new XMLHttpRequest();
}
xhr.open("get", "getAjax03?userName="+document.getElementById('userName').value+"", true);
var jsonObj;
var jsonStr;
var jiaoyan = document.getElementById("userName").value; //用于获取到输入框的值
var jiaodian = document.getElementById("userName");    //用于设置默认焦点,注意与上面一行的差别。
alert("jiaoyan:"+jiaoyan);
if(jiaoyan===""||jiaoyan===undefined){
alert("用户名不能为空");//判断是否为空;
jiaodian.focus();   //设置默认焦点,把默认焦点设置为注册用户名的input中。
}
xhr.onreadystatechange = function(){
if(xhr.readyState==4){
jsonStr = xhr.responseText;
alert("jsonStr:"+jsonStr);
jsonObj = JSON.parse(jsonStr);
var userName = jsonObj.userName;
document.getElementById("span").innerHTML=userName;
//注意上面的innerHTML属性,而不是.value属性,切记,给页面上的span标签设置值。
}
}
xhr.send(null);
} </script>

  

<body>
失去焦点值:<input type="text" onclick="getAjax()" id="a" /></br>
注册名:<input type="text" onblur="checkName()" id="userName" /><span class="tishi" id="span"></span></br>
密码:<input type="text" onblur="checkPassWord()" id="password" /></br> </body>

  下面是Java代码:

public class GetAjax03 extends HttpServlet{
@Override
protected void service(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
response.setCharacterEncoding("utf-8");
PrintWriter out = response.getWriter();
JSONObject jsonObj = new JSONObject();
jsonObj.put("name", "weiyongle");
jsonObj.put("sex", "nan");
System.out.println("jsonObj:"+jsonObj); String userName = request.getParameter("userName");
System.out.println("userName:"+userName);
if(userName.equals("weiyongle")){
jsonObj.put("userName", userName+"已经注册,请修改注册名");
}else{ jsonObj.put("userName", userName+"可以正常注册");
}
out.print(jsonObj);
System.out.println("jsonObj:"+jsonObj);
out.close();
}
}

  下面是web.xml

  <servlet>
<servlet-name>getAjax</servlet-name>
<servlet-class>com.wyl.web.GetAjax03</servlet-class>
</servlet> <servlet-mapping>
<servlet-name>getAjax</servlet-name>
<url-pattern>/getAjax03</url-pattern>
</servlet-mapping>

  

Ajax,设置默认焦点以及判断是否为空的更多相关文章

  1. ajax设置默认值ajaxSetup()方法

    $(function(){ //设置全局 jQuery Ajax全局参数 $.ajaxSetup({ type:"POST", async:false, cache:false, ...

  2. winform中设置窗体的默认焦点

    winform的窗体中,有时候需要设置默认焦点,有时候需要取消默认焦点. 设置默认焦点,最简单的方法就是设置这个控件的tabIndex,例:textBox1.TabIndex = 0; 也可以在窗体事 ...

  3. winform 中设置窗体的默认焦点

    转载:http://www.cnblogs.com/weekzero/p/3504513.html winform的窗体中,有时候需要设置默认焦点,有时候需要取消默认焦点. 设置默认焦点,最简单的方法 ...

  4. JS判断内容为空方法总结

    HTML代码: 用户名:<input type="text" id="username"> <p style="color:red& ...

  5. winform窗口打开后文本框的默认焦点设置

    原文:http://blog.csdn.net/kongwei521/article/details/6871411 winform窗口打开后文本框的默认焦点设置,进入窗口后默认聚焦到某个文本框,两种 ...

  6. c# winform 设置winform进入窗口后在文本框里的默认焦点

    c# winform 设置winform进入窗口后在文本框里的默认焦点 进入窗口后默认聚焦到某个文本框,两种方法: ①设置tabindex 把该文本框属性里的tabIndex设为0,焦点就默认在这个文 ...

  7. delphi 设置默认控件得到焦点

    如果同一窗体有多个按钮的话,追踪源码发现最后是taborder来的 如: 在空白窗体上拖入两个button (btn1,btn2) 如果在btn2设置default = True 运行后,默认焦点还是 ...

  8. Winform 判断打印机是否可用,实现设置默认打印机功能

    Winform 判断打印机是否可用,实现设置默认打印机功能 http://www.cnblogs.com/zfanlong1314/p/3878563.html

  9. Winform给TextBox设置默认值

    Winform给TextBox设置默认值(获取焦点后默认值消失) 主要是通过TextBox的获取焦点Enter和失去焦点Leave两个事件来实现的, 思路如下: 1.设置一个字符串常量,作为TextB ...

随机推荐

  1. centos 挂载windows共享目录

    su (获取root权限) yum install samba 安装samba (其实我们只用到samba里面的winbind以便我们能够用windows机器的名称找到该机器的网络地址,在下面叙述的过 ...

  2. hdu 4704 Sum 费马小定理

    题目链接 求2^n%mod的值, n<=10^100000. 费马小定理 如果a, p 互质, 那么a^(p-1) = 1(mod p)  然后可以推出来a^k % p = a^(k%(p-1) ...

  3. python的map()函数

    map()是 Python 内置的高阶函数,它接收一个函数 f 和一个 list,并通过把函数 f 依次作用在 list 的每个元素上,得到一个新的 list 并返回. 例如,对于list [1, 2 ...

  4. 泛型 "new的性能"

    完美的.net泛型也有特定的性能黑点?追根问底并且改善这个性能问题 完美的.net真泛型真的完美吗 码C#多年,不求甚解觉得泛型就是传说中那么完美,性能也是超级好,不错,在绝大部分场景下泛型表现简直可 ...

  5. javascript收集整理

    //特殊字符去掉 function check(obj){ var test=obj.value.match(/[^A-Za-z0-9]/g);//这条语句表示在输入文本中是否包含不符合要求的字符,如 ...

  6. python使用easygui写图形界面程序

    我 们首先下载一个类库easygui,它是一个Python用于简单开发图形化界面的类库,打开easygui的下载网页 http://sourceforge.net/projects/easygui/? ...

  7. Android开发小记

    一,下载解压adt-bundle,直接可以用来开发了二,新建android项目时不勾选创建activity,来看看如何手动创建activity1,在空项目添加class文件,选择超类为activity ...

  8. Cocos2d-x 3.0 使用TinyXml 解析XML文件

    在cocos2d-x 3.0中Xml解析已经不用自己找库了,已经为我们集成好了. text.xml <!--?xml version ="1.0" encoding =&qu ...

  9. JavaScript 高级程序设计(第3版)笔记——chapter5:引用类型(基本包装类型部分)

    一.介绍 为了方便操作基本类型值,ECMAScript还提供了3个特殊的引用类型:Boolean, Number, String. 实际上,每当读取一个基本类型值得时候,后台就会创建一个对应的基本包装 ...

  10. python开发环境安装

    1.首先安装python-3.4.2.msi,此为python主程序,双击安装,根据自身的情况做选择,也可以使用默认设置,一路next也没什么问题. 2.设置环境变量=>编辑Path,在最后加上 ...