知识大全 c#下简单的Ajax例子——Ajax.dll

Posted

篇首语:最是人间留不住,朱颜辞镜花辞树。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 c#下简单的Ajax例子——Ajax.dll相关的知识,希望对你有一定的参考价值。

c#下简单的Ajax例子——Ajax.dll  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  小研究了一下如何用Ajax dll实现上一个例子 很沮丧 因为使用人家的方法 更简单 代码更少 而且仅仅是它的皮毛而已 所以 如果做项目要用到Ajax 建议研究一下框架 比如说Ext 它的类库和文档相当丰富 简单易上手

  好吧 我把实现过程列出来 首先我们需要一个Ajax dll文件 这个自己去找吧!放到项目中 并添加好引用 首先 你需要一个类 随意命名为 AjaxMethod cs 代码如下

  namespace Test AjaxTest

  

  /// <summary>

  /// AjaxMethod 的摘要说明

  /// </summary>

  public class AjaxMethod

  

  public AjaxMethod()

  //数据库查询操作

  [Ajax AjaxMethod(Ajax HttpSessionStateRequirement Read)]

  public DataSet GetList(string id)

  

  string sql = select CityName CityCode from City where [ID]= + id;

  return SelectData(sql); //调用下面的方法

  

  //

  private DataSet SelectData(string sql)

  

  //数据库链接定义

  //nfig中<configuration><appSettings></appSettings></configuration>

  //中添加定义 <add key= ConnectionString value= data source=localhost;

  // initial catalog=helpdesk ; user id=sa; password=sa; ></add>

  string cs = System Configuration ConfigurationSettings AppSettings[ ConnectionString ];

  //或者直接这样定义

  //string cs = Server=(local);UID=sa;PWD=sa;Database=HelpDesk ;

  SqlDataAdapter sda = new SqlDataAdapter(sql cs);

  DataSet ds = new DataSet();

  sda Fill(ds);

  return ds;

  

  

  

  接下来是你要实现效果的页面a aspx <body>部分很简单

  <body>

  <form id= Form method= post runat= server >

  <select id= AList onchange= GetBList() >

  <option value= >A</option>

  <option value= >B</option>

  <option value= >C</option>

  </select>

  <select id= BList ></select>

  </form>

  </body>    当页面触发onchange事件 便进入了GetBList()方法 下面是该页面完整的js <script language= javascript >

  function GetBList()

  //调用数据库操作方法

  var av = document getElementById( AList ) value;

  // 调用AjaxMethod类的方法 至于这里有两个参数 猜想是一个委托 // 将GetList执行结果DataSet传递给SetBList方法 隐藏了AjaxMethod GetList(av SetBList);

  

  function SetBList(response)

  if(response != null) var ds = response value;  // 返回集

  // 这里很有特色 开始我感觉出错了 怎么js的语法规则跟c#一样啊// 可见Ajax dll里面的正则应该写的暴强!不过有一点让人感觉不爽// 我在测试时 将ds Tables[ ] Rows lenght写成了ds Tables[ ] Rows Count // js会找不到对象的错误

  // 如此等于 我们还是要习惯它的规则 毕竟不完全是c# 它只是定义了一种跟c#

  //非常接近的语法规则而已

  if(ds != null && typeof(ds) == object && ds Tables != null) alert(ds Tables[ ] Rows length);

  for(var i= ;i<ds Tables[ ] Rows length;i++) var option = document createElement( OPTION );

  option value = ds Tables[ ] Rows[i] CityCode;

  option text = ds Tables[ ] Rows[i] CityName;

  document Form BList options add(option);

  

  

  

  

  </script>

  如此例子便结束了 很多繁复的操作都封装了 我们学到的只是如何用 仅此而已 不过在我们赶项目的时候 确实能带来很多的方便

  补充 按照上面的方式配置 会得到一个异常 就是无法识别AjaxMethod类的异常 我们需要在页面的后台cs文件中 添加定义 Ajax Utility RegisterTypeForAjax(typeof(完整命名空间 AjaxMethod));

  除了这里要添加注册定义之外 我们还需要在nfig中添加

  <Handlers>

  <add verb= POST GET path= ajax/* ashx type= Ajax PageHandlerFactory Ajax />

  </Handlers>

cha138/Article/program/net/201311/13412

相关参考

知识大全 C#调用存储过程简单完整例子

C#调用存储过程简单完整例子  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  CREATEPROC

知识大全 ajax验证用户名是否可用

  Ajax很简单(jsp例子)  首先是jsp页面和脚本为了方便写在一个里面  这是一个很常见的检测用户名是否存在的功能  这里用的是struts可以在路径path中加加上要传的值name在acti

知识大全 使用jquery实现简单的ajax

本篇文章是对用jquery实现简单的ajax的实现方法进行了详细的分析介绍需要的朋友参考下   >页复制代码代码如下:<!DOCTYPEPUBLIC"//WC//DTDXHTML

知识大全 .net 2.0(c#)下简单的FTP应用程序

.net2.0(c#)下简单的FTP应用程序  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  介绍

知识大全 一个例子理解C#位移

一个例子理解C#位移  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  很多人觉得位移这东西很复杂二

知识大全 C#操作Access数据库的例子

C#操作Access数据库的例子  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  添加  usin

知识大全 Ajax+PHP简单入门[1]

Ajax+PHP简单入门[1]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  Ajax由HTML

知识大全 Ajax+PHP简单入门[2]

Ajax+PHP简单入门[2]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!xmlHttponre

知识大全 Ajax+PHP快速上手及简单应用说明

Ajax+PHP快速上手及简单应用说明  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!对于Ajax最

知识大全 ASP.NET中使用AJAX的简单方法

ASP.NET中使用AJAX的简单方法  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  据我所知这