男人吃奶摸下挵进去好爽,日日躁夜夜躁狠狠躁,freesexvide0s性欧美高清,高清freexxxx性国产,无码人妻一区二区三区一,乱人伦中文字幕成人网站在线,亚洲欧美综合一区二区三区 ,神马影院在线视频观看
知識學堂
  • ·聯系電話:+86.023-75585550
  • ·聯系傳真:+86.023-75585550
  • ·24小時手機:13896886023
  • ·QQ 咨 詢:361652718 513960520
當前位置 > 首頁 > 知識學堂 > 網站建設知識
AJAX教程(8):AJAX 請求實例
更新時間:2011-12-18 | 發布人:本站 | 點擊率:323

我們已看到 AJAX 可被用來創建更多交互性的應用程序。

AJAX Suggest實例

在下面的 AJAX 例子中,我們會演示當用戶向一個標準的 HTML 表單中輸入數據時網頁如何與 web 服務器進行通信。

在下面的文本框中輸入名字:

Suggestions:

例子解釋 - HTML表單

表單的 HTML 代碼:

<form> 
First Name:<input type="text" id="txt1" onkeyup="showHint(this.value)" />
</form>

<p>Suggestions: <span id="txtHint"></span></p> 

正如您看到的,這是一個簡單的帶有名為 "txt1" 輸入域的 HTML 表單。輸入域的事件屬性定義了一個由 onkeyup 事件觸發的函數。

表單下面的段落包含了一個名為 "txtHint" 的 span,這個 span 充當了由 web 服務器所取回的數據的位置占位符。

當用戶輸入數據時,名為 "showHint()" 的函數就會被執行。函數的執行是由 "onkeyup" 事件觸發的。另外需要說明的是,當用戶在文本域中輸入數據時把手指從鍵盤按鍵上移開時,函數 showHint 就會被調用。

例子解釋 - showHint() 函數

showHint() 函數是一個位于 HTML 頁面 head 部分的很簡單的 JavaScript 函數。

此函數包含以下代碼:

function showHint(str)
{

  if (str.length==0)
    { 
    document.getElementById("txtHint").innerHTML="";
    return;
    }

  xmlHttp=GetXmlHttpObject()
  
  if (xmlHttp==null)
    {
    alert ("您的瀏覽器不支持AJAX!");
    return;
    }

var url="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 對象的問題。

這是此函數的代碼:

function GetXmlHttpObject()
{
  var xmlHttp=null;
  try
    {
    // Firefox, Opera 8.0+, Safari
    xmlHttp=new XMLHttpRequest();
    }
  catch (e)
    {
    // Internet Explorer
    try
      {
      xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
      }
    catch (e)
      {
      xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
      }
    }
  return xmlHttp;
}

例子解釋 - stateChanged() 函數

stateChanged() 函數包含下面的代碼:

function stateChanged() 
{ 
  if (xmlHttp.readyState==4)
  { 
  document.getElementById("txtHint").innerHTML=xmlHttp.responseText;
  }
}

每當 XMLHTTP 對象的狀態發生改變時,stateChanged() 函數就會執行。

當狀態變更為 4(“完成”)時,txtHint 占位符的內容就被響應文本來填充。

分享到: QQ空間 新浪微博 開心網 人人網
主站蜘蛛池模板: 久久午夜无码鲁丝片直播午夜精品| 国产精品国产三级国产专区50| 一二三四视频高清在线观看3| 亚洲国产香蕉碰碰人人| 被老汉耸动呻吟双性美人| 啊┅┅快┅┅用力啊岳网站| 国产亚洲无线码一区二区| 跪趴式啪啪gif动态图27报| 欧美性暴力变态xxxx| 日韩av一中美av一中文字慕| 久久99国产综合精品免费| 香蕉伊蕉伊中文视频在线| 一面上边一面膜下边的免费| cijilu在线视频| 人妻放荡乱h文| 入禽太深免费观看| 肥大bbwbbw高潮抽搐| 色噜噜狠狠一区二区三区| 吃瓜爆料就看黑料社区| 午夜性影院在线观看视频播放| 偷窥 亚洲 另类 图片 熟女| 爆乳女仆高潮在线观看| 年轻女教师免费观看| 欧美日韩国产三级一区二区三区 | 色哟哟在线视频精品一区| 久久久久无码国产精品不卡| 亚洲欧美成人一区二区在线| 九九爱www免费人成视频| 乱人伦人妻中文字幕| 欧美人妻体内射射| 边做边爱免费视频| a毛片免费全部播放| 国产精品久久久久精品日日| 少妇被粗大的猛烈进出小说网 | 丰满少妇大力进入av亚洲| 日本特黄a级高清免费大片| 末成年╳╳0o| 精品色卡一线二线三线的| 久久亚洲av永久无码精品| 亚洲 中文字幕 日韩 无码| 男人狂躁进女人下面免费视频|