21st
2008,04
AJAX实例:根据邮编自动完成地址信息
先介绍下AJAX:Ajax 由 HTML、JavaScript™ 技术、DHTML 和 DOM 组成,这一杰出的方法可以将笨拙的 Web 界面转化成交互性的 Ajax 应用程序。本系列的作者是一位 Ajax 专家,他演示了这些技术如何协同工作 —— 从总体概述到细节的讨论 —— 使高效的 Web 开发成为现实。他还揭开了 Ajax 核心概念的神秘面纱,包括 XMLHttpRequest 对象。
在注册或购物车结帐的时候,需要用户填入个人资料,这个环节可以简练一下,我们只需客人填入邮政编码,然后就根据这个邮政编码,自动从数据库中取出相应的省,市等地址信息。这样既可以减少客户的输入,增加客户体验,又可以减少由于资料输入而产生的错误。
- <script>
- function createRequestObject() {
- var ro;
- var browser = navigator.appName;
- if(browser == "Microsoft Internet Explorer"){
- ro = new ActiveXObject("Microsoft.XMLHTTP");
- }else{
- ro = new XMLHttpRequest();
- }
- return ro;
- }
- var http = createRequestObject();
- function sndReq(zip) {
- http.open('get', 'zipcode.php?zip='+zip);
- http.onreadystatechange = handleResponse;
- http.send(null);
- }
- function handleResponse() {
- if(http.readyState == 4){
- var response = http.responseText;
- var update = new Array();
- if(response.indexOf('|' != -1)) {
- update = response.split('|');
- document.getElementById("city").value = update[0];
- document.getElementById("state").value = update[1];
- }
- }
- }
- </script>
- <h3>Enter A United States Zipcode, Then Tab</h3>
- <table align="center">
- <tr>
- <td>Enter Zipcode:</td>
- <td><input type="text" id="zipcode" name="zipcode" onBlur="sndReq(this.value);"/></td>
- </tr>
- <tr>
- <td>City:</td>
- <td><input type="text" id="city" name="city"/></td>
- </tr>
- <tr>
- <td>State:</td>
- <td><input type="text" id="state" name="state"/></td>
- </tr>
- </table>
Name: Cngothic 































Leave a reply?