在ASP.NET中使用AJAX的簡單方法(2)_.Net教程
推薦:解析在ASP.NET中調(diào)用存儲過程的方法 在使用.NET的過程中,數(shù)據(jù)庫訪問是一個很重要的部分,特別是在B/S系統(tǒng)的構(gòu)建過程中,數(shù)據(jù)庫操作幾乎成為了一個必不可少的操作。調(diào)用存儲過程實現(xiàn)數(shù)據(jù)庫操作使很多程序員使用的方法,而且大
function GetMSXmlHttp()
{
var xmlHttp = null;
var clsids = ["Msxml2.XMLHTTP.6.0","Msxml2.XMLHTTP.5.0","Msxml2.XMLHTTP.4.0","Msxml2.XMLHTTP.3.0",
"Msxml2.XMLHTTP.2.6","Microsoft.XMLHTTP.1.0",
"Microsoft.XMLHTTP.1","Microsoft.XMLHTTP"];
for(var i=0; i<clsids.length && xmlHttp == null; i ) {
xmlHttp = CreateXmlHttp(clsids[i]);
}
return xmlHttp;
}
function CreateXmlHttp(clsid) {
var xmlHttp = null;
try {
xmlHttp = new ActiveXObject(clsid);
lastclsid = clsid;
return xmlHttp;
}
catch(e) {}
}
由于MSXML5只是為Office設(shè)計的,因此,我們可以不考慮MSXML5。所以GetMSXmlHttp方法可以簡化為以下形式:
function GetMSXmlHttp() {
var xmlHttp = null;
var clsids = ["Msxml2.XMLHTTP.6.0","Msxml2.XMLHTTP.4.0","Msxml2.XMLHTTP.3.0"];
for(var i=0; i<clsids.length && xmlHttp == null; i ) {
xmlHttp = CreateXmlHttp(clsids[i]);
}
return xmlHttp;
}
我們可以看出,GetXmlHttpObject方法有一個handle參數(shù),這個參數(shù)指向一個回調(diào)方法,這個回調(diào)方法將被定義在每一個需要刷新的aspx頁中。現(xiàn)在我們已經(jīng)有了一個XmlHttp對象,接下來我們可以發(fā)送一個異步的HTTP請求了。
function SendXmlHttpRequest(xmlhttp, url) {
xmlhttp.open('GET', url, true);
xmlhttp.send(null);
}
在以上代碼中我使用了一個GET HTTP請求發(fā)送了一個URL,你可以很容易修改以上的JavaScript代碼,使其發(fā)送其它的HTTP方法。
寫在aspx頁中的方法
現(xiàn)在我們已經(jīng)編寫完調(diào)用遠程頁面的所有方法。為了執(zhí)行這些方法,我們需要為GetXmlHttpObject方法傳遞一個回調(diào)方法名,然后向SendXmlHttpRequest方法傳遞一個URL字符串。下面是相應(yīng)的實現(xiàn)代碼:
var xmlHttp;
function ExecuteCall(url)
{
try
{
xmlHttp = GetXmlHttpObject(CallbackMethod);
SendXmlHttpRequest(xmlHttp, url);
}
catch(e){}
}
//CallbackMethod will fire when the state
//has changed, i.e. data is received back
function CallbackMethod()
{
try
{
//readyState of 4 or 'complete' represents
//that data has been returned
if (xmlHttp.readyState == 4 || xmlHttp.readyState == 'complete')
{
var response = xmlHttp.responseText;
if (response.length > 0)
{
//update page
document.getElementById("elementId").innerHTML = response;
}
}
}
catch(e){}
}
分享:判斷瀏覽器是否接受Cookies 一種確定瀏覽器是否接受 Cookie 的方法是先編寫一個 Cookie,然后再嘗試讀取這個 Cookie。如果不能讀取這個 Cookie,則可以認為該瀏覽器不接受 Cookie。 我編寫了一個簡單的示例來說明
- asp.net如何得到GRIDVIEW中某行某列值的方法
- .net SMTP發(fā)送Email實例(可帶附件)
- js實現(xiàn)廣告漂浮效果的小例子
- asp.net Repeater 數(shù)據(jù)綁定的具體實現(xiàn)
- Asp.Net 無刷新文件上傳并顯示進度條的實現(xiàn)方法及思路
- Asp.net獲取客戶端IP常見代碼存在的偽造IP問題探討
- VS2010 水晶報表的使用方法
- ASP.NET中操作SQL數(shù)據(jù)庫(連接字符串的配置及獲取)
- asp.net頁面?zhèn)髦禍y試實例代碼
- DataGridView - DataGridViewCheckBoxCell的使用介紹
- asp.net中javascript的引用(直接引入和間接引入)
- 三層+存儲過程實現(xiàn)分頁示例代碼
- 相關(guān)鏈接:
- 教程說明:
.Net教程-在ASP.NET中使用AJAX的簡單方法(2)
。