• jquery调用页面后台方法‏


    给出了两个简单的例子,无参数的和有参数的,返回的都是json数据。

    前台html代码:

    View Code
      1 <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="JqueryCSMethodForm.aspx.cs" Inherits="JQuerWeb.JqueryCSMethodForm" %>
    2
    3 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    4
    5 <html xmlns="http://www.w3.org/1999/xhtml" >
    6
    7 <head runat="server">
    8
    9 <title></title>
    10
    11 <script type="text/javascript" src="JS/jquery-1.4.2.js"></script>
    12
    13
    14
    15 <script type="text/javascript">
    16
    17 $(document).ready(function() {
    18
    19 $("input[type='button'][value='GetDate']").click(function() {
    20
    21 $.ajax({
    22
    23 type: "post",
    24
    25 url: "JqueryCSMethodForm.aspx/GetNowDate",
    26
    27 datatype: "json",
    28
    29 contentType: "application/json; charset=utf-8",
    30
    31 success: function(data) {
    32
    33 $("input#showTime").val(eval('(' + data.d + ')')[0].nowtime);
    34
    35 },
    36
    37 error: function(XMLHttpRequest, textStatus, errorThrown) {
    38
    39 alert(errorThrown);
    40
    41 }
    42
    43 });
    44
    45 });
    46
    47 $("input[type='button'][value='GetOneDayLater']").click(function() {
    48
    49 $.ajax({
    50
    51 type: "post",
    52
    53 url: "JqueryCSMethodForm.aspx/GetOneDayLate",
    54
    55 data:"{days:1}",
    56
    57 datatype: "json",
    58
    59 contentType: "application/json; charset=utf-8",
    60
    61 success: function(data) {
    62
    63 $("input#showTime").val(eval('(' + data.d + ')')[0].nowtime);
    64
    65 },
    66
    67 error: function(XMLHttpRequest, textStatus, errorThrown) {
    68
    69 alert(errorThrown);
    70
    71 }
    72
    73 });
    74
    75 });
    76
    77 });
    78
    79
    80
    81 </script>
    82
    83 </head>
    84
    85 <body>
    86
    87 <form id="form1" runat="server">
    88
    89 <div>
    90
    91 <input type="button" value="GetDate" />
    92
    93 <input type=button value="GetOneDayLater" />
    94
    95 <input type="text" id="showTime" />
    96
    97 </div>
    98
    99 </form>
    100
    101 </body>
    102
    103 </html>

    CS代码:

    View Code
     1 using System;
    2
    3 using System.Collections.Generic;
    4
    5 using System.Linq;
    6
    7 using System.Web;
    8
    9 using System.Web.UI;
    10
    11 using System.Web.UI.WebControls;
    12
    13 using System.Web.Services;
    14
    15 namespace JQuerWeb
    16
    17 {
    18
    19 public partial class JqueryCSMethodForm : System.Web.UI.Page
    20
    21 {
    22
    23
    24
    25 protected void Page_Load(object sender, EventArgs e)
    26
    27 {
    28
    29
    30
    31 }
    32
    33 [WebMethod]
    34
    35 public static String GetNowDate()
    36
    37 {
    38
    39 return "[{\"nowtime\":\"" + DateTime.Now.ToShortDateString() + "\"}]";
    40
    41 }
    42
    43 [WebMethod]
    44
    45 public static String GetOneDayLate(Int32 days)
    46
    47 {
    48
    49 return "[{\"nowtime\":\"" + DateTime.Now.AddDays(days).ToShortDateString() + "\"}]";
    50
    51 }
    52
    53 }
    54
    55 }

    注意点:

    (1) url的填写格式 url+"/method name"

    (2) contentType: "application/json; charset=utf-8", 这个必须要有

    (3) 返回数据的类型为json

    (4) data:"{days:1}",参数的传递

    (5)  后台的方法必须是public static 而且还要有 [WebMethod]特性修饰

  • 相关阅读:
    小米手机无法连接eclipse调试解决方案
    黏性控件的使用
    快速索引 (对View的自定义)
    侧滑面板(对viewGroup的自定义)
    安卓程序员要拿到5000和1w的薪资,分别需要掌握哪些技术?
    1、话说linux内核
    嵌入式软件工程师面试
    arm汇编之 bne与beq
    不要做浮躁的嵌入式系统工程师
    内核里面writel(readl)是如何实现的
  • 原文地址:https://www.cnblogs.com/zcttxs/p/2429174.html
Copyright © 2020-2023  润新知