asp.net Ajax调用Aspx后台方法

Posted 三瑞

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了asp.net Ajax调用Aspx后台方法相关的知识,希望对你有一定的参考价值。

 

 

Ajax调用的前提(以aspx文件为例:)

1、首先需要在aspx文件后台中引用using System.Web.Services;

2、需要调用的方法必须是公共的(public)、静态的(static);如果不是会提示“500 Internal Server Error 问题”,代表找不到method。

3、方法定义需要加入[WebMethod]的声明

4、一般建议由返回类型,最起码可能知道调用成功不成功。

 

下面是简单的调用示例:

后台方法

[WebMethod]
public static string WriteLog(DateTime StartTime, DateTime EndTime) 
{
if (true) { return ""; } else { return "读取出错!"; } return ""; }

前台调用

$.ajax({
                url: ‘Index.aspx/WriteLog‘,
                type: ‘post‘,
                data: JSON2.stringify({ StartTime: $(‘#dtbStartTime‘).datetimebox("getValue"), EndTime: $(‘#dtbEndTime‘).datetimebox("getValue")}),
                cache: false, dataType: ‘json‘,
                contentType: "application/json;charset=utf-8",
                success: function (data) {
                    console.info(data);
                }
            });

  

注意前台调用时必须把json对象转为json字符串,否则会报错 “

无效的 JSON 基元: Types

 


以上是关于asp.net Ajax调用Aspx后台方法的主要内容,如果未能解决你的问题,请参考以下文章

C#实现简易ajax调用后台方法

asp.net利用Ajax和Jquery在前台向后台传参数并返回值

Jquery Ajax调用aspx页面方法

Jquery Ajax调用aspx页面方法

Jquery Ajax调用asp.net后台方法

JQuery ajax调用asp.net的webMethod