• 使用JQuery从客户端调用C#方法


      这篇文章将帮助你怎样实现客户端调用后台定义的方法。JQuery让生活变的更简单,对于它来说,这有一个很简单的方法去实现这个目的。

    (注:本文的目的是想说明怎样使用JQuery去请求后台某个定义的方法,而非直接使用后台函数。请求后台的方法有很多种,这仅仅是客户端与服务端交互的方法之一,当然还有当下流行的WebService。看到评论中有朋友对本文的标题有深入的讨论,所以在此做下说明!)

    早前,我们知道一种方法:如果我们想从客户端去调用一个后台添加的函数就需要写一种叫的WebMethod的东西,而现在,通过下面的方法,我们将无需再用到WebMethod。

         通过下面的例子,我将写一个方法,它的目的是当点击删除键时将会删除一个指定的用户。我不想回发(postback,Web 页将数据发送回服务器上的同一页的进程。),所以想从客户端执行该事件。我在服务器端的cs文件中写了一个方法,并在客户端通过JQuery去调用它。这个页面叫Test.aspx。而这个方法叫DeleteRec()。

    复制代码
    1 private void DeleteRec()
    2 {
    3   int ID = Request.Form["ID"].ToString().ToInteger();
    4   //parameter send from client side   
    5   int UserID = Request.Form["UserID "].ToString().ToInteger();
    6   //parameter send from client side   
    7   UserBO lObjUserBO = new UserBO();
    8   lObjUserBO .DeleteUser(ID, UserID);
    9 }
    复制代码

    下面将介绍如果调用这个方法: 

    复制代码
     1 protected void Page_Load(object sender, EventArgs e)
     2 {
     3   if (!Page.IsPostBack)
     4   {
     5     #region Ajax methods   
     6     if (Request.Form["MethodName"] == "DeleteR")
     7     // same Method Name that we are specifying on client side(DeleteR)   
     8     {
     9       DeleteRec(); // Method defined on the page to delete the record   
    10       return ;
    11     }
    12     #endregion 
    13   }
    14 }
    复制代码

    这就是我们需要在客户端(Test.aspx)中需要添加的。

    1 <a id="adelete" href="java<!-- no -->script:void(0);">Delete</a>  

    使用下需要脚本将会在我们点击锚标记的时候调用服务端的方法。

    复制代码
     1 $('#adelete').click(function()    
     2  {          
     3      var dataToSend={ID:ID,MethodName:'DeleteR',UserID :UserID };                     
     4      var options =          
     5      {          
     6          url: '<%=ResolveUrl("~/Test.aspx") %>?x=' + new Date().getTime(),          
     7          data: dataToSend,          
     8          dataType: 'JSON',          
     9          type: 'POST',          
    10          success: function (response) {          
    11          window.location.href='<%=ResolveUrl("~/Test1.aspx")%>/'+ID;          
    12          //after success will redirect to new page          
    13      }          
    14  }          
    15  $.ajax(options);  
    复制代码

    希望上面这些能对你从客户端调用服务端代码有所帮助。

  • 相关阅读:
    (转)怎样获得与激活Windows 7超级管理员权限
    (转) C代码优化方案
    英语词汇立体记忆 02
    (转)LUA和C之间的函数调用
    通过lua自带例子学习lua 01
    英语词汇立体记忆 01
    反射(类加载内存分析)
    反射(类加载器的作用)
    反射(动态创建对象操作属性)
    反射(分析类初始化)
  • 原文地址:https://www.cnblogs.com/weixing/p/2479157.html
Copyright © 2020-2023  润新知