我有一个webm,它返回一个item数组, 我的问题是我无法发送一些参数,也许没有任何参数可以工作
0
答案 0 :(得分:0)
为了发送json,你必须使用网页(.aspx),而不是像我提到的例子那样使用网络服务(.asmx)。
您只能传递一个参数,必须是一个对象,一个类的实例,它将是json参数。
如果您的课程是MAPS:
Public Class MAPS
Private _RCodProvincia As String
Public Property RCodProvincia As String
Get
Return _RCodProvincia
End Get
Set(ByVal value As String)
_RCodProvincia = value
End Set
End Property
Private _RCodCitta As Integer
Public Property RCodCitta As Integer
Get
Return _RCodCitta
End Get
Set(ByVal value As Integer)
_RCodCitta = value
End Set
End Property
End Class
您的方法将是:
<System.Web.Services.WebMethod()> _
Public Shared Function BindMapMarker(maps As MAPS) As MAPS
'Do the logic here
Return maps
End Function
你的javascript,你必须指定标题来发送json(内容类型)和期望json,以便jquery正确地形成请求:
$("#btnMAPS").live("click", function () {
var MAPS = {};
MAPS.Rcodprovincia = "Mumbai";
MAPS.RcodCitta = "2000";
$.ajax({
type: 'POST',
url: 'MyPage.aspx/BindMapMarker',
contentType: 'application/json; charset=utf-8',
data: "{maps:" + JSON.stringify(MAPS) + "}",
dataType: 'json',
success: function (r) {
// Do the logic here
alert(r);
console.log(r);
},
error: function (request, status, error) {
alert(request.responseText);
}
});
});