js如何触发asp.net后台方法
时间: 2023-05-31 13:05:17 浏览: 65
要触发ASP.NET后台方法,可以使用AJAX(异步JavaScript和XML)技术。以下是步骤:
1. 创建一个ASP.NET Web服务或页面方法,该方法将执行所需的后台逻辑并返回结果。
2. 在JavaScript中,使用XMLHttpRequest对象创建一个AJAX请求。
3. 设置请求的URL为ASP.NET Web服务或页面方法的URL。
4. 使用请求的open()方法设置请求类型为POST,并设置Content-Type标头为“application/json”。
5. 创建一个JavaScript对象,其中包含要发送到后台的数据。
6. 将JavaScript对象转换为JSON字符串,并将其作为请求体发送。
7. 在请求的onreadystatechange事件处理程序中检查readyState和status属性,以确定请求是否成功。
8. 如果请求成功,则从响应中获取数据并使用它们执行任何必要的前端逻辑。
以下是示例代码:
ASP.NET后台方法:
[WebMethod]
public static string HelloWorld(string name)
{
return "Hello, " + name + "!";
}
JavaScript代码:
var xhr = new XMLHttpRequest();
var url = "MyPage.aspx/HelloWorld";
xhr.open("POST", url, true);
xhr.setRequestHeader("Content-Type", "application/json");
var data = { name: "John" };
var json = JSON.stringify(data);
xhr.onreadystatechange = function () {
if (xhr.readyState === 4 && xhr.status === 200) {
var response = JSON.parse(xhr.responseText);
console.log(response.d);
}
};
xhr.send(json);