Ajax特效 根据邮政编码获取地区信息 之一
在很多系统中,需要用户填写个人资料,其中包含地区、城市、邮政编码等信息。而邮政编码本身包含了地区和城市信息,所以可以利用此规则简化操作。用户只需要输入邮政编码,系统根据邮政编码自动取得地区信息。这样做使得用户可以获得更好的使用体验,也可以减少错误的发生。
要实现自动获取地区信息,主要考虑3个问题:邮编正确性保证,触发自动获取的时机,返回信息的格式。
1.利用onkeypress事件进行检查输入的字符
邮编均由数字组成,为了保证用户不输入数字以外的内容,可以利用onkeypress事件进行检查。当用户在邮编文本框中输入字符时,触发该事件。通过在触发函数中调用event.keyCode属性判断按键keyCode的值是否处于48~57之间(对应数字0~9)。如果在范围之外,则说明输入的不是数字,通过设置event.returnValue = false使本次按键事件失效。这样就可以保证用户输入的字符均为数字。
2.用户将焦点移出邮编文本框时自动获取地区信息
当用户将邮编输入完毕后,会将焦点移出邮编所在文本框,此时可通过onblur事件触发getPostalCode函数以获取地区信息。在向服务器发送请求之前,先判断用户输入的邮编是否是6位数字。如果数字位数不正确,则不需要向服务器发出请求。
3.将地区和城市信息作为一个字符串返回给客户端
根据邮政编码的前4位即可判断出地区和城市的信息,所以在服务器端可以先使用全部6位编码进行查找。找到信息后可直接返回,如果没有找到,可取前4位后补“00”继续查找。查找结束后,返回的信息利用“|”作为地区和城市的分隔符,在客户端使用split(“|”)方法再对字符串进行分割即可。如果无法通过邮政编码查找到地区信息,服务器将返回一个空字符串,客户端接收到以后不需要做任何操作,此时用户可以自行输入地区和城市信息。
相关文档:
前台代码:
<head runat="server">
<title>无标题页</title>
<script src="Ajax.js" type="text/javascript"></script>
</head>
<body>
<form id="form1" runat="server">
<div&g ......
今天动态添加option到selectl时,出现了添加后option为空白,个数却正确的情况。代码如下:
for(var i = 0; i < results.length; i++) {
oOption = document.createElement("OPTION");
oOption.value=results[i].child ......
这几天一直在研究treeTable(是一款jQuery的插件),这款插件将普通的表,变成一个可以收缩的treeTable。这种表格主要应用于权限处理,可以使用户一目了然地看见各个资源的继承关系。 上图就是一个简单的treeTable图例。 但是该表是一个静态的表,表格里的内容是一次性从服务器上获取下来,然后插件根据tr的id以及clas ......
页面中显示了3个问题,分别编号为1、2、3。每个问题表现为一个超链接,单击超链接触发loadFAQ函数。每个问题下面包含一个用于显示答案的div,id属性设置为“faqDetail+问题编号”,通过style="display:none"默认设置为隐藏。详细的函数说明请参考代码中的注释。
<%@ page contentType="text/plain; c ......
服务器端响应文件read_faq.jsp
服务器响应文件根据用户传入的faqId参数,从数据库中查找对应的FAQ详细信息。详细信息可以为包含HTML标记的内容。查询完毕后将结果返回。
<%@ page contentType="text/plain; charset=UTF-8"%>
<%@ page language="java"%>
<%@ page import="java.sql.*,ajax.db.D ......