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

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事件中加上

value="客户端获取IP" >

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

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

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

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

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

时间: 2025-01-02 11:53:01

初次体验.NET Ajax无刷新技术的相关文章

.net Ajax无刷新技术

ajax|刷新|无刷新 [导读]Ajax技术了,号称无刷新,其实是在web上通过javascript,使用异步的xmlhttp请求,实现无刷新的web界面.本文通过一个实例带大家体验.net Ajax无刷新技术-- 下载一个.net Ajax开发包,该开发包包括ASP2.0和目前ASP1.1版使用的Ajax,详细地址参见http://ajax.schwarz-interactive.de/,接下来,开始. 1. 新建一个项目,在引用中添加引用Ajax.dll,Ajax.dll位于下载的压缩包里面

Ajax无刷新 返回一个集合

问题描述 我要这样一个效果有一个下拉列表框,里面是产品的类型有:酒类.饮料类.日用品类.比如当我选择了酒类,那么就查询显示所有酒类的产品,显示的是一个集合.我想使用Ajax无刷新技术.但是貌似Ajax返回的只是一个String值,请问有谁知道可以返回一个集合实现我要的效果吗? 解决方案 解决方案二:dwr解决方案三:Ajax返回的是一个xml文件.你可以自己设计xml文件的结构,当然可以保存多个数据了.解决方案四: 解决方案五:组织成json数据解决方案六:使用json数据解决方案七:json数

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

ajax|刷新|无刷新    ajax技术的优势到底在哪里呢,不明白.看一个最简单的例子,假设用户注册的时候,判断用户输入的名字是否已经被占用,假设输入数字1:显示"OK"(表示正确,可以使用):输入其他字符:显示"Error" (表示错误,已经被占用). 用ajax技术实现 代码: t.htm <script> function f(){ var req =new ActiveXObject("Microsoft.XMLHTTP")

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

ajax|刷新|无刷新 ajax技术的优势到底在哪里呢,不明白.看一个最简单的例子,假设用户注册的时候,判断用户输入的名字是否已经被占用,假设输入数字1:显示"OK"(表示正确,可以使用):输入其他字符:显示"Error" (表示错误,已经被占用). 用ajax技术实现 代码: t.htm <script>function f(){var req =new ActiveXObject("Microsoft.XMLHTTP"); req

ajaxfileupload.js插件结合一般处理文件实现Ajax无刷新上传

先上几张图更直观展示一下要实现的功能,本功能主要通过Jquery ajaxfileupload.js插件结合ajaxUpFile.ashx一般应用程序处理文件实现Ajax无刷新上传功能,结合NPOI2.0实现数据读取.这个功能在实际工作种经常用到,希望能给需要做这方面的人有些帮助. 一.功能页面布局及介绍 1.上传页面布局及input file上传功能 2.上传页面文件正在上传效果 3.上传完成效果,多文件展示区 二.功能代码实现及资源引用 1.js资源文件引用 html页面js引用,需要引用j

ajax无刷新分页的简单实现_AJAX相关

本文实例为大家分享了ajax无刷新分页的具体代码,供大家参考,具体内容如下 html页 <html> <head> <title></title> <style type="text/css"> table{ border:solid 1px #444; background-color:Aqua;} table td{border:solid 1px #444;} </style> <script src=

基于jquery实现ajax无刷新评论_jquery

jquery实现ajax无刷新评论需要用的技术:(本次试验用的是"jquery-1.4.2.js"版本的jquery) $.post("一般处理程序路径",{以字典的形式传递参数},function(data,status){``````}); jquery中的基本选择器操作: 首先创建数据库"T_article": 主键设置自增: 然后创建一个强类型的DataSet. 接着创建一个"无刷新评论.aspx"页面: 页面代码如下

jquery 插件 web2.0分格的分页脚本,可用于ajax无刷新分页_jquery

******生成js分页脚****** ****没剑(2008-03-05)**** 修改日期:2008-3-12 添加两个参数:displaynum,displaylastNum可以自由定制显示的页码数量 参数: pagesize:10 //每页显示的页码数 ,count:0 //数据条数 ,css:"mj_pagefoot" //分页脚css样式类 ,current:1 //当前页码 ,displaynum:7 //中间显示页码数 ,displaylastNum:5 //最后显示的

swfupload ajax无刷新上传图片实例代码_实用技巧

最近自己做项目的时候需要添加一个功能,上传用户的图片,上传用户图片其实涉及到很多东西,不只是一个html标签<input id="File1" type="file" />或者asp.net封住好的FileUpload 控件,现在网站不再讲究的是功能性,更多的是用户体验性,在这里上传图片就需要用到ajax无刷新上传图片,这里面包含的东西不是一点半点.这里用到的是一个插件swfupload 实现无刷新上传图片.直接上传我的代码供大家参考. 前台代码区: 复