(转)初次体验.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>
 /// Summary description for Methods.
 /// </summary>
 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

在页面上<head>中引用default.js :   <script language="javascript" src="default.js"></script>

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

<INPUT style="Z-INDEX: 101; LEFT: 392px; POSITION: absolute; TOP: 176px" type="button"
    value="客户端获取IP" οnclick="javascript:GetMac();">

6.在page页面的Page_Load事件中加上

  private void Page_Load(object sender, System.EventArgs e)
  {
   // 在此处放置用户代码以初始化页面
   Ajax.Utility.RegisterTypeForAjax(typeof(AjaxSample.DemoMethods));
  }

         注意:typeof(AjaxSample.DemoMethods)中,AjaxSample是命名空间,DemoMethods是要包含要调用方法的类,即上面第3步.新建类DemoMethods

7.修改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……

转载于:https://www.cnblogs.com/wskaihd/archive/2006/09/07/497042.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/476854.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

提速256倍,斯坦福谷歌提出扩散模型蒸馏方法,效果接近Teacher

编辑 | 杜伟、陈萍来源 | 机器之心斯坦福大学联合谷歌大脑使用「两步蒸馏方法」提升无分类器指导的采样效率&#xff0c;在生成样本质量和采样速度上都有非常亮眼的表现。去噪扩散概率模型&#xff08;DDPM&#xff09;在图像生成、音频合成、分子生成和似然估计领域都已经实现…

移动数据网络类型是nr_便携式移动网络的快速搭建方法

在用户高峰时段&#xff0c;常用的移动网络很容易堵塞&#xff0c;不堪重负。所以&#xff0c;关键时刻能够建立安全可靠的通信&#xff0c;是非常重要的。在本案例中&#xff0c;我用的移动通信系统是GSM协议&#xff0c;为了能够将GSM协议广播出去&#xff0c;我使用了BladeR…

程序员面试金典 - 面试题 17.19. 消失的两个数字(数学/位运算)

1. 题目 给定一个数组&#xff0c;包含从 1 到 N 所有的整数&#xff0c;但其中缺了两个数字。 你能在 O(N) 时间内只用 O(1) 的空间找到它们吗&#xff1f; 以任意顺序返回这两个数字均可。 示例 1: 输入: [1] 输出: [2,3]示例 2: 输入: [2,3] 输出: [1,4]提示&#xff1a…

其实没事做,写写博客也不错的

以前一直很喜欢记录自己的一些事情&#xff0c;现在有博客这个东西了&#xff0c;但是懒得很&#xff0c;申请N多没有一个坚持记录下去的&#xff0c;希望在博客园可以好好安家。。今晚竟然看博客看到11.00了&#xff0c;要洗澡睡觉了。。明天要搞定PES、还要开会。。。事情有点…

python sorted下标_Python列表操作最全面总结

1.列表添加元素列表中可以使用append、insert、extend方法实现元素的添加。append会把新元素添加到列表末尾"a", insert(index, object) 在指定位置index前插入元素object"a", 通过extend可以将另一个集合中的元素逐一添加到列表中(合并)A [1, 2]B [3, 4…

BatchFormer:有效提升数据稀缺场景的模型泛化能力|CVPR2022

文 | 侯志知乎&#xff08;已授权&#xff09;源 | 极市平台摘要当前的深度神经网络尽管已经取得了巨大的成功&#xff0c;但仍然面临着来自于数据稀缺的各种挑战&#xff0c;比如数据不平衡&#xff0c;零样本分布&#xff0c;域适应等等。当前已经有各种方法通过样本之间的关…

程序员面试金典 - 面试题 16.06. 最小差(排序+双指针)

1. 题目 给定两个整数数组a和b&#xff0c;计算具有最小差绝对值的一对数值&#xff08;每个数组中取一个值&#xff09;&#xff0c;并返回该对数值的差 示例&#xff1a; 输入&#xff1a;{1, 3, 15, 11, 2}, {23, 127, 235, 19, 8} 输出&#xff1a; 3&#xff0c;即数值对…

bigdecimal 保留两位小数_一起聊聊小数的储存和运算

原创&#xff1a; 蜀中亮子 玄说前端 小数运算的问题在 js 中的小数运算中&#xff0c;一直存在着一个问题&#xff0c;比如&#xff1a;0.10.20.30000000000000004 、0.4-0.30.10000000000000003。那么为什么会出现这种情况呢&#xff1f;这种情况又如何解决呢&#xff1f;为什…

从DeepFace到AdaFace,7篇论文讲清人脸识别

人脸识别是现在应用最广泛的视觉技术之一&#xff0c;同时也是前沿研究热点之一。我找来了深耕人脸的朋友张老师&#xff0c;从DeepFace到AdaFace&#xff0c;讲解deepface、facenet、vggface、sphereface、cosface、adaface等论文&#xff0c;给各位做一次人脸识别的系统分享。…

提升方法(Boosting)

文章目录1. 提升方法AdaBoost算法2. AdaBoost算法训练误差分析3. AdaBoost算法的解释4. 提升树5. sklearn 实例提升&#xff08;boosting&#xff09;方法是一种常用的统计学习方法&#xff0c;应用广泛且有效。 在分类问题中&#xff0c;它通过改变训练样本的权重&#xff0c…

在两个页面之间传递信息

在asp.net不同页面之间传值的方法主要有三种:(1)用querystring方法&#xff1a;在vs2005中新建asp.net网站(发送端)&#xff0c;在页面上添加button,两个TextBox,代码如下&#xff1a;protectedvoidButton1_Click(objectsender, EventArgs e) { string url; u…

英特尔或将大幅裁员

编辑 | David来源 | 新智元受PC业务持续不振影响&#xff0c;曝英特尔计划裁员数千人&#xff0c;可能将影响20%的员工。据知情人士透露&#xff0c;英特尔公司正计划大幅裁员&#xff0c;人数可能达到数千人&#xff0c;以削减成本&#xff0c;应对不景气的个人电脑市场的萎缩…

pandas object转float_25个Pandas实用技巧

本文一共为大家分享25个pandas技巧&#xff0c;此为上篇~显示已安装的版本输入下面的命令查询pandas版本&#xff1a;In [7]:pd.__version__Out[7]:0.24.2如果你还想知道pandas所依赖的模块的版本&#xff0c;你可以使用show_versions()函数:In [9]&#xff1a;pd.show_version…

LeetCode 820. 单词的压缩编码(后缀树)

文章目录1. 题目2. 解题2.1 反转字符串字符查找2.2 后缀树1. 题目 给定一个单词列表&#xff0c;我们将这个列表编码成一个索引字符串 S 与一个索引列表 A。 例如&#xff0c;如果这个列表是 ["time", "me", "bell"]&#xff0c;我们就可以将其…

sql查询分页

用sql 查询时select top 10 * from Orders order by orderid desc操作时&#xff0c;我们先对查询结果进行ordersby排序 然后才取出其最前边10个使用sql查询分页时的几点思路&#xff08;举例均从查询第100到120之间20条记录&#xff09;1.取前120条记录orderby主键&#xff0c…

openstack实例状态错误_Openstack虚机操作总结

1. 概览Openstack作为常见的IAAS服务&#xff0c;其最核心的对象就是虚机实例&#xff0c;而Openstack下支持的虚机操作有很多种&#xff0c;有些是特别常见的虚机操作比如创建虚机、启动虚机、删除虚机等&#xff0c;而有些虚机操作则是针对特定场景下比如出现故障而提供的保护…

神网站PaperWithoutCode:举报无法复现的论文,让一作社死??

文 | 小戏几乎是可以肉眼可见的看到机器学习领域的论文几何级的增长&#xff0c;在铺天盖地的论文雪花纸片般涌来时&#xff0c;灌水、可复现性、工作真实的意义这些概念也伴随着 Paper 的洪水进入了人们的视野。谈及科研&#xff0c;我们总是站在以往研究的基础上&#xff0c;…

仿WINDWS无限级Ajax菜单树升级1.3版(修补了严重BUG)

仿WINDWS无限级Ajax菜单树升级1.3版(修补了严重BUG) WINDWS无限级Ajax菜单树又升级了(1.3版) 对以下BUG进行了修复 1.只能在文字上拖拽(不能从文件夹图标上拖) 2.拖拽后不刷新菜单的BUG&#xff08;拖拽为子级菜单后&#xff0c;菜单原地不消失的情况。也…

程序员面试金典 - 面试题 08.11. 硬币(背包DP)

文章目录1. 题目2. 解题1. 题目 硬币。给定数量不限的硬币&#xff0c;币值为25分、10分、5分和1分&#xff0c;编写代码计算 n 分有几种表示法。(结果可能会很大&#xff0c;你需要将结果模上1000000007) 示例1:输入: n 5输出&#xff1a;2解释: 有两种方式可以凑成总金额:…

ab的plc跟西门子哪个好些_2020滚筒洗衣机哪个牌子好?想买滚筒洗衣机的看过来!...

滚筒洗衣机哪个牌子好&#xff1f;想买滚筒洗衣机的人越来越多&#xff0c;滚筒洗衣机无疑是现在大多数年轻人更喜欢的款式&#xff0c;颜值高、功能多、追求个性化洗衣操作&#xff0c;滚筒的不伤衣物更温柔对于有真丝雪纺面料衣物的&#xff0c;滚筒洗衣机现在真是越来越智能…