Tôi đang cố gắng phục vụ các yêu cầu AJAX với một phương thức trong trang .aspx của tôi. Đối với một số lý do tôi không nhận được dữ liệu trả về mà tôi muốn. Ai có thể cho tôi biết tôi đang làm gì sai?Yêu cầu dịch vụ AJAX với webmethod trong trang 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));
}
});
});
Khi tôi bấm mybutton
tôi nhận được một cảnh báo "lỗi:" và sau đó toàn bộ rất nhiều HTML mà nói:
Unknown web method testmethod.
Parameter name: methodName
Cảm ơn, điều này đã giải quyết được vấn đề. – Flash
Để thêm - Trong C# - nó cần phải là 'tĩnh' – Lijo