ajax调用其他方法 methods_JavaScript调用后台的三种方法实例(包含两种Ajax)

方法一:直接使用调用(ASPX页面)

前台JS,代码如下:

var methodStr = "";

alert(methodStr);

后台方法,代码如下:

public static string BehindMethod()

{

return "这是一个后台的方法";

}

说明:

1)BehindMethod()方法前的public访问修饰符不要忘了;

2)此法有局限性——BehindMethod()只会在ASPX页面加载或者回发的时候自动调用,不能人为控制调用。

方法二:用ajax调用

前台JS/jQuery,代码如下:

var params = {ext:"p9hp"}; //参数,注意参数名要注意和后台方法参数名要一致

$(function(){

$("#btnOk").click(function(){

$.ajax({

type:"POST", //请求方式

url:"AjaxDemo.aspx/GetImg", //请求路径:页面/方法名字

data: params, //参数

dataType:"text",

contentType:"application/json; charset=utf-8",

beforeSend:function(XMLHttpRequest){

$("#tips").text("开始调用后头方法获取图片路径,请等待");

$("#imgFood").attr("src","image/loading.gif");

},

success:function(msg){ //成功

$("#imgFood").attr("src",eval("("+msg+")").d);

$("#tips").text("调用方法结束");

},

error:function(obj, msg, e){ //异常

alert("OH,NO");

}

});

});

});

页面HTML,代码如下:

ASPX后台方法,代码如下:

[System.Web.Services.WebMethod]

public static string GetImg(string ext)

{

System.Threading.Thread.Sleep(5000);//为了有点等待的效果,延迟5秒

StringComparer sc = StringComparer.OrdinalIgnoreCase;

string[] extArr = new string[] { "php", "asp", "aspx", "txt", "bmp" };

bool f = extArr.Any(s=>sc.Equals(s,ext)); //判断传入的后缀名是否存在

if (f)

{

return "image/54222860.jpg";

}

return "image/star1.jpg";

}

说明:

1)后台方法前的[System.Web.Services.WebMethod]不能少;

2)还有一种形式的ajax,与上述很类似,不同之处在于:使用.ashx一般处理程序,将上述前

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值