亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

asp.net使用母版頁(yè)中使用ajax腳本取數(shù)據(jù)

 更新時(shí)間:2010年09月24日 13:59:30   作者:  
因母版頁(yè)繼承自UserControl,我們無(wú)法像正常頁(yè)面那樣使用Jquey或Ajax的PageMethods等無(wú)刷新方法取數(shù)據(jù)。不過(guò)可以使用ajax提供的Sys.Net.WebRequest來(lái)解決這一問(wèn)題。
方法如下:
  1、 頁(yè)面中拖入ScriptManager。以便于使用Ajax腳本。同時(shí)放在其它客戶(hù)端控件,用于觸發(fā)NetPost方法。這里不列出客戶(hù)端控件。
復(fù)制代碼 代碼如下:

<asp:ScriptManager ID="smMaster" runat="server" ScriptMode="Auto" EnablePageMethods="true">
</asp:ScriptManager>

  2、在Master源碼中編寫(xiě)js
復(fù)制代碼 代碼如下:

function NetPost() {
//創(chuàng)建實(shí)例
var wRequest = new Sys.Net.WebRequest();
//設(shè)置請(qǐng)求URL
wRequest.set_url("../CheckState/CheckNetState.aspx");
//定義參數(shù)
var body = "ip=192.168.1.1";
//設(shè)置參數(shù)
wRequest.set_body(body);
//設(shè)置請(qǐng)求方式
wRequest.set_httpVerb("POST");
//請(qǐng)求完成處理函數(shù)
wRequest.add_completed(PostNet);
//執(zhí)行請(qǐng)求
wRequest.invoke();
}
function PostNet(exector, eventArgs) {
//執(zhí)行器的狀態(tài)E :responseAvailable、aborted 或 timedOut。
  //僅當(dāng) responseAvailable 返回 true 時(shí),事件處理程序才能訪問(wèn)執(zhí)行器的其他響應(yīng)信息。
if (exector.get_responseAvailable()) {
  //判斷狀態(tài)是否正常
if (exector.get_statusCode() == '200') {
     //得到返回值
var returnInfo = exector.get_responseData();
if (returnInfo == "0") {
      //顯示相關(guān)內(nèi)容
}
}
}
}

  3、add_completed()說(shuō)明:
   注冊(cè)的事件處理程序函數(shù)必須接受兩個(gè)參數(shù):
  1) 對(duì)發(fā)出網(wǎng)絡(luò)請(qǐng)求的執(zhí)行器的引用。通過(guò)訪問(wèn)執(zhí)行器,可以檢查其狀態(tài)和檢索響應(yīng)數(shù)據(jù)。
  2) eventArgs 參數(shù),它由引發(fā)完成請(qǐng)求事件的執(zhí)行器設(shè)置。
  4、編寫(xiě)請(qǐng)求頁(yè)面
    請(qǐng)求地址為一個(gè)頁(yè)面,沒(méi)有任何HTML內(nèi)容,僅在Page_load方法中編寫(xiě)代碼。本例中的請(qǐng)求頁(yè)面放在根目錄的CheckState文件夾下,名稱(chēng)為:CheckNetState.aspx 。
  5、請(qǐng)求頁(yè)面代碼如下,主要實(shí)現(xiàn)Ping功能。
復(fù)制代碼 代碼如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace Iaddtech.Environmental.Web.UI.CheckState
{
public partial class CheckNetState : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
Response.Clear();
//得到參數(shù)
string ip = Request.Form["ip"];
int isConnect = PingServer(ip);
//輸入返回值
Response.Write(isConnect.ToString());
Response.End();
}
private int PingServer(string ip)
{
System.Net.NetworkInformation.Ping p = new System.Net.NetworkInformation.Ping();
System.Net.NetworkInformation.PingOptions options = new System.Net.NetworkInformation.PingOptions();
options.DontFragment = true;
string data = "t";
byte[] buffer = System.Text.Encoding.ASCII.GetBytes(data);
int timeout = 1000; // Timeout 時(shí)間,單位:毫秒
System.Net.NetworkInformation.PingReply reply = p.Send(ip, timeout, buffer, options);
if (reply.Status == System.Net.NetworkInformation.IPStatus.Success)
return 0;
else
return 1;
}
}
}

  6、用其它頁(yè)面套用母版頁(yè)后,測(cè)試。
Sys.Net.WebRequest請(qǐng)參考:http://msdn.microsoft.com/zh-cn/library/bb310979.aspx

相關(guān)文章

最新評(píng)論