Я пытаюсь обслуживать запросы AJAX с помощью метода на моей странице .aspx. По какой-то причине я не получаю возвращенные данные, которые я хочу. Может ли кто-нибудь сказать мне, что я делаю неправильно?Служба AJAX запросов с webmethod на странице ASPX
mypage.aspx:
<%@ Page Language="VB" Title="My Page" %>
<%@ Import Namespace="System.Web.Services" %>
<%@ Import Namespace="System.Collections.Generic" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Protected Sub Page_Load(sender As Object, e As System.EventArgs)
End Sub
<WebMethod()> Public Function testmethod() As Integer
Return 5
End Function
</script>
<html>
<!--...rest of page including mybutton and myresults-->
JQuery:
$("#mybutton").click(function() {
$.ajax({
type: "POST",
url: "mypage.aspx/testmethod",
data: "{}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function(msg) {
alert("success");
$("#myresults").html(msg.d);
},
error: function(msg) {
alert("error:" + JSON.stringify(msg));
}
});
});
Когда я нажимаю mybutton
я получаю предупреждение "ошибка:", а затем весь много HTML, который говорит:
Unknown web method testmethod.
Parameter name: methodName
Спасибо, это решило проблему. – Flash
Чтобы добавить - В C# - это должно быть 'static' – Lijo