ajax xmlhttprequest非同步獲取後臺資料(二)
前臺程式碼:
<%@ Page Title="主頁" Language="C#" AutoEventWireup="true"
CodeBehind="Default.aspx.cs" Inherits="ajax測試二._Default" %>
<html>
<head>
<script type="text/javascript">
function getHttpObj() {
var httpobj = null;
try {
httpobj = new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e) {
try {
httpobj = new ActiveXObject("Microsoft.XMLHTTP");
}
catch (e1) {
httpobj = new XMLHttpRequest();
}
}
return httpobj;
}
function cs() {
var obj = getHttpObj();
var sel1 = document.getElementById('cs1');
obj.open("get", "default.aspx?id=" + cs1.value, true); //記得小寫,親,並且default.aspx不區分大小寫,這裡在IE存在快取問題,使用下面的可以解決
obj.open("get", "default.aspx?id=" + cs1.value + "&dt=" + new Date().getTime());//ajax非同步在IE下面存在快取,不會向後臺請求
obj.send(); //記得小寫,親
obj.onreadystatechange = function () {//此處為回撥函式
if (obj.readyState == 4 && obj.status == 200) {
alert(obj.responseText);
}
};
}
</script>
</head>
<body>
<select id="cs1" onchange="cs();">
<option value="1">江西省</option>
<option value="2">福建省</option>
</select>
</body>
</html>
後臺程式碼:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace ajax測試二
{
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (Request.QueryString["id"] != null)
{
string id = Request.QueryString["id"];
Response.Write(id + "aa");
Response.End();
}
}
}
}