AJAX 请求实例

大海诺

大海诺

2016-02-19 14:09

下面是个超简单的AJAX 请求实例教程,图老师小编精心挑选推荐,大家行行好,多给几个赞吧,小编吐血跪求~
我们已看到AJAX可被用来创建更多交互性的应用程序。
  
  AJAXSuggest实例
  
  在下面的AJAX例子中,我们会演示当用户向一个标准的HTML表单中输入数据时网页如何与web服务器进行通信。
  
  在下面的文本框中输入名字:
  
  FirstName:
  
  Suggestions:
  
  例子解释-HTML表单
  
  表单的HTML代码:
  
  form
  
  FirstName:inputtype="text"id="txt1"onkeyup="showHint(this.value)"/
  
  /form
  
  pSuggestions:spanid="txtHint"/span/p
  
  正如您看到的,这是一个简单的带有名为"txt1"输入域的HTML表单。输入域的事件属性定义了一个由onkeyup事件触发的函数。
  
  表单下面的段落包含了一个名为"txtHint"的span,这个span充当了由web服务器所取回的数据的位置占位符。
  
  当用户输入数据时,名为"showHint()"的函数就会被执行。函数的执行是由"onkeyup"事件触发的。另外需要说明的是,当用户在文本域中输入数据时把手指从键盘按键上移开时,函数showHint就会被调用。
  
  例子解释-showHint()函数
  
  showHint()函数是一个位于HTML页面head部分的很简单的JavaScript函数。
  
  此函数包含以下代码:
  
  functionshowHint(str)
  
  {
  
  if(str.length==0)
  
  {
  
  document.getElementById("txtHint").innerHTML="";
  
  return;
  
  }
  
  xmlHttp=GetXmlHttpObject()
  
  if(xmlHttp==null)
  
  {
  
  alert("您的浏览器不支持AJAX!");
  
  return;
  
  }
  
  varurl="gethint.asp";
  
  url=url+"?q="+str;
  
  url=url+"&sid="+Math.random();
  
  xmlHttp.onreadystatechange=stateChanged;
  
  xmlHttp.open("GET",url,true);
  
  xmlHttp.send(null);
  
  }每当有字符输入文本框时,此函数就会执行。
  
  假如文本域中存在某些输入,函数就会执行:
  
  定义回传数据的服务器的url(文件名)
  
  使用文本框的内容向url添加参数(q)
  
  添加一个随机的数字,以防止服务器使用某个已缓存的文件
  
  创建一个XMLHTTP对象,并告知此对象当某个改变被触发时执行名为stateChanged的函数
  
  向服务器发送一个HTTP请求
  
  如果输入域为空,此函数仅仅会清空txtHint占位符的内容
  
  例子解释-GetXmlHttpObject()函数
  
  上面的例子可调用名为GetXmlHttpObject()的函数。
  
  此函数的作用是解决为不同浏览器创建不同的XMLHTTP对象的问题。
  
  这是此函数的代码:
  
  functionGetXmlHttpObject()
  
  {
  
  varxmlHttp=null;
  
  try
  
  {
  
  //Firefox,Opera8.0+,Safari
  
  xmlHttp=newXMLHttpRequest();
  
  }
  
  catch(e)
  
  {
  
  //InternetExplorer
  
  try
  
  {
  
  xmlHttp=newActiveXObject("Msxml2.XMLHTTP");
  
  }
  
  catch(e)
  
  {
  
  xmlHttp=newActiveXObject("Microsoft.XMLHTTP");
  
  }
  
  }
  
  returnxmlHttp;
  
  }例子解释-stateChanged()函数
  
  stateChanged()函数包含下面的代码:
  
  functionstateChanged()
  
  {
  
  if(xmlHttp.readyState==4)
  
  {
  
  document.getElementById("txtHint").innerHTML=xmlHttp.responseText;
  
  }
  
  }每当XMLHTTP对象的状态发生改变时,stateChanged()函数就会执行。
  
  当状态变更为4(“完成”)时,txtHint占位符的内容就被响应文本来填充。
  
展开更多 50%)
分享

猜你喜欢

AJAX 请求实例

Web开发
AJAX 请求实例

AJAX教程(8):AJAX 请求实例

Web开发
AJAX教程(8):AJAX 请求实例

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

AJAX避免用户重复提交请求实现方案

Web开发
AJAX避免用户重复提交请求实现方案

AJAX请求类

Web开发
AJAX请求类

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

AJAX Http请求

Web开发
AJAX Http请求

AJAX教程(2):AJAX Http请求

Web开发
AJAX教程(2):AJAX Http请求

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

DOM事件模型的两件事(2)

DOM事件模型的两件事(2)

Ajax须注意的几个问题

Ajax须注意的几个问题
下拉加载更多内容 ↓