初次体验.NET Ajax无刷新技术

洛宁移不动

洛宁移不动

2016-01-29 13:28

初次体验.NET Ajax无刷新技术,初次体验.NET Ajax无刷新技术
早就听说Ajax技术了,传说中是一种很牛的东西,号称无刷新,其实是在web上通过javascript,使用异步的xmlhttp请求,实现无刷新的web界面。可惜一直没有体验过, 先后听做PHP的朋友用过PHP的Ajax开发包,而且做了很多很酷的东西,使小生羡慕不已。 今天下了一个.net Ajax开发包,该开发包包括ASP2.0和目前ASP1.1版使用的Ajax,详细地址参见http://ajax.schwarz-interactive.de/,接下来,开工。

   1. 新建一个项目,在引用中添加引用Ajax.dll,Ajax.dll位于下载的压缩包里面。

   2.建立HttpHandler,在web.config里面加上 <configuration>
<system.web>
<httpHandlers>
<add verb="POST,GET" path="ajax/*.ashx" type="Ajax.PageHandlerFactory, Ajax" />
</httpHandlers>
...
<system.web>
</configuration>
3.新建一个类DemoMethods,这个类实现获取客户端MAC地址: using System;
using System.Web;
namespace AjaxSample
{
///


/// Summary description for Methods.
///

public class DemoMethods
{

[Ajax.AjaxMethod]
public string GetCustomerMac(string clientIP) //para IP is the client's IP
{
string mac = "";
System.Diagnostics.Process process = new System.Diagnostics.Process();
process.StartInfo.FileName = "nbtstat";
process.StartInfo.Arguments = "-a "+clientIP;
process.StartInfo.UseShellExecute = false;
process.StartInfo.CreateNoWindow = true;
process.StartInfo.RedirectStandardOutput = true;

process.Start();

string output = process.StandardOutput.ReadToEnd();
int length = output.IndexOf("MAC Address = ");
if(length 0)
{
mac = output.Substring(length+14, 17);
}

process.WaitForExit();

return mac.Replace("-", "").Trim();
}
}
}

4.写javascript,新建一个名为default,js文件如下:

function GetMac()
{
var clientIP="192.168.0.1";
document.getElementById("Mac").value=DemoMethods.GetCustomerMac(clientIP).value
alert(DemoMethods.GetCustomerMac(clientIP).value);
}

5.在某个Aspx页面放上一个html 的button

  在页面上 中引用default.js :

  在INPUT的onclick事件中加上onclick="javascript:GetMac()"

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com)

value="客户端获取IP" onclick="javascript:GetMac();"

   6.修改Global.asax的Application_Start事件,设置Ajax的HandlerPath :

protected void Application_Start(Object sender, EventArgs e)
{
Ajax.Utility.HandlerPath = "ajax";
}

运行看看效果。是不是没有刷新就在服务器端取到客户端的MAC地址??

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com)

需要注意的是:该版本的.net Ajax需要手工在中Global.asax加上Ajax.Utility.HandlerPath = "ajax"; 配置文件web.config必须加上HttpHandler的配置信息!

该开发包的新版本还没有来得及体验,估计新版本中会方便一些,可能会去掉手动的设置Global.asax的Application_Start事件中加上Ajax.Utility.HandlerPath = "ajax";以及其他麻烦的设置!期待ing……

展开更多 50%)
分享

猜你喜欢

初次体验.NET Ajax无刷新技术

电脑网络
初次体验.NET Ajax无刷新技术

AJAX技术vs传统的ASP无刷新技术

Web开发
AJAX技术vs传统的ASP无刷新技术

s8lol主宰符文怎么配

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

AJAX技术 vs 传统的ASP无刷新技术

电脑网络
AJAX技术 vs 传统的ASP无刷新技术

AJAX和传统的ASP无刷新技术比较

Web开发
AJAX和传统的ASP无刷新技术比较

lol偷钱流符文搭配推荐

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

Ajax技术(WEB无刷新提交数据)

Web开发
Ajax技术(WEB无刷新提交数据)

Ajax技术(WEB无刷新提交数据)-

Web开发
Ajax技术(WEB无刷新提交数据)-

lolAD刺客新符文搭配推荐

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

《部落战争》新手攻略

《部落战争》新手攻略

Flash MX 2004 UI组件系列教程(3)

Flash MX 2004 UI组件系列教程(3)
下拉加载更多内容 ↓