• asp.net如何在前台利用jquery Ajax调用后台方法


    一 :最近因为帮同事开发项目使用到了asp.net,而我又想实现Ajax异步请求....从网上查询了一下资料之后,原来在asp.net中利用Ajax调用后台方法同样很简单,为了便于自己以后查看,特将此整理后记录如下

    先贴上前台代码如下:

      1 <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Index.aspx.cs" Inherits="aspnetAjax.Index" %>
      2 
      3 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
      4 <html xmlns="http://www.w3.org/1999/xhtml">
      5 <head runat="server">
      6     <title>
      7         <%=Title %></title>
      8     <script src="Scripts/jquery-1.4.1.min.js" type="text/javascript"></script>
      9     <style type="text/css">
     10         td
     11         {
     12             text-align: center;
     13         }
     14     </style>
     15     <script type="text/javascript">
     16         $(function () {
     17             $("#but").attr("disabled", false);
     18         });
     19         //(全/反)选:
     20         function getChk() {
     21             if ($("#ch").attr("checked")) {
     22                 $(".chk").attr("checked", true);
     23             } else {
     24             $(".chk").attr("checked",false);
     25             }
     26         }
     27         //利用AJAX将数据发送到后台并判断数据选中情况方法:
     28         function sendData() {
     29             var sendValue = "";
     30             $(".chk").each(function (i,chk) {
     31                 if (chk.checked) {
     32                     sendValue += $.trim($(chk).parent().parent().find(".getData").text());
     33                     sendValue += ",";
     34                 }
     35             })
     36             if (sendValue.length == 0) {
     37                 alert("请选择需要传输的数据!!");
     38                 return;
     39             }
     40             sendValue = sendValue.substr(0, sendValue.length - 1);
     41             //开始ajax to asp.net:
     42             $.ajax({
     43                 type: "post",
     44                 contentType: "application/json",
     45                 url: "Index.aspx/GetAjaxValue",
     46                 data: "{sendValue:'" + sendValue + "'}",
     47                 beforeSend: function () {
     48                     $("#but").attr("disabled", true);
     49                 },
     50                 success: function (data) {
     51                     alert(data.d);
     52                 }, complete: function () { }, error: function () { }
     53             })
     54         }
     55     </script>
     56 </head>
     57 <body>
     58     <form id="form1" runat="server">
     59     <div>
     60         <table width="400px"; border="1px solid blue" cellpadding="0px" cellspacing="0px" style="border-color: Green; text-align:center">
     61             <tr>
     62                 <th>
     63                     全选<input type="checkbox" id="ch" onclick="getChk()" />
     64                 </th>
     65                 <th>
     66                     数据
     67                 </th>
     68             </tr>
     69             <tr>
     70                 <td>
     71                     <input type="checkbox" class="chk" />
     72                 </td>
     73                 <td class="getData">
     74                     1234
     75                 </td>
     76             </tr>
     77             <tr>
     78                 <td>
     79                     <input type="checkbox" class="chk" />
     80                 </td>
     81                 <td class="getData">
     82                    5678
     83                 </td>
     84             </tr>
     85             <tr>
     86                 <td>
     87                     <input type="checkbox" class="chk" />
     88                 </td>
     89                 <td class="getData">
     90                    12345678
     91                 </td>
     92             </tr>
     93             <tr>
     94                 <td>
     95                     <input type="checkbox" class="chk" />
     96                 </td>
     97                 <td class="getData">
     98                    87654321
     99                 </td>
    100             </tr>
    101         </table>
    102     </div>
    103     </form>
    104     <hr />
    105     <input type="button" id="but" onclick="sendData()" value="将选中的数据利用Ajax发送到后台" style=" background-color:#0080BB; cursor:pointer; border:1px solid #008094; border-radius:5px;" />
    106 </body>
    107 </html>

    后台处理代码:

     1 using System;
     2 using System.Collections.Generic;
     3 using System.Linq;
     4 using System.Web;
     5 using System.Web.UI;
     6 using System.Web.UI.WebControls;
     7 using System.Web.Script.Serialization;
     8 using System.Web.Services;
     9 
    10 namespace aspnetAjax
    11 {
    12     public partial class Index : System.Web.UI.Page
    13     {
    14         public string title = "asp.net中使用Ajax";
    15         protected void Page_Load(object sender, EventArgs e)
    16         {
    17 
    18         }
    19         [WebMethod]
    20         public static string GetAjaxValue(string sendValue) 
    21         {
    22             return sendValue;
    23         }
    24     }
    25 }

    注意事项说明1:

    注意事项说明二:

    最终实现:

    天气寒冷,就先写到这里....

  • 相关阅读:
    javax.xml.ws.WebServiceException: Provider com.sun.xml.ws.spi.ProviderImpl not found
    注意资源利用 不然导致资源消耗会很严重
    E212: 不能以写入模式打开 linux
    安装db2 提示不是有效的win32应用程序?
    对苹果“五仁”编程语言Swift的简单分析
    Spoj 1557 Can you answer these queries II 线段树 随意区间最大子段和 不反复数字
    Oracle 学习笔记 14 -- 集合操作和高级子查询
    PHP的curl库代码使用
    AWS OpsWorks新增Amazon RDS支持
    最短编辑距离算法
  • 原文地址:https://www.cnblogs.com/luo-super/p/4118550.html
Copyright © 2020-2023  润新知