Я использую этот метод в качестве обертки так, чтобы я мог отправить параметры. Также использование переменных в верхней части метода позволяет этому быть минимизированным в более высоком отношении и допускает некоторое повторное использование кода при совершении нескольких подобных вызовов.
function InfoByDate(sDate, eDate){
var divToBeWorkedOn = "#AjaxPlaceHolder";
var webMethod = "http://MyWebService/Web.asmx/GetInfoByDates";
var parameters = "{'sDate':'" + sDate + "','eDate':'" + eDate + "'}";
$.ajax({
type: "POST",
url: webMethod,
data: parameters,
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function(msg) {
$(divToBeWorkedOn).html(msg.d);
},
error: function(e){
$(divToBeWorkedOn).html("Unavailable");
}
});
}
я надеюсь, что это помогает.
Обратите внимание на то, что это требует, чтобы 3,5 платформы выставили JSON webmethods, который может быть использован этим способом.
Вот пример для вызова веб-сервиса с помощью jQuery.get:
$.get("http://domain.com/webservice.asmx", { name: "John", time: "2pm" },
function(data){
alert("Data Loaded: " + data);
});
В примере выше, мы называем "webservice.asmx", передавая два параметра: имя и время. Затем получение эксплуатационной мощности в вызове назад функционирует.
Я не знаю о том определенном веб-сервисе SharePoint, но можно украсить метод страницы или веб-сервис с <WebMethod()>
(в VB.NET), чтобы гарантировать, что он сериализирует к JSON. Можно, вероятно, просто обернуть метод, который webservice.asmx использует внутренне в собственном веб-сервисе.
Dave Ward имеет хорошая пошаговая демонстрация на этом.
У меня есть достойный пример в Ajax jQuery и ASMX при использовании вызова Ajax jQuery с asmx веб-сервисами...
существует строка кода к uncommment, чтобы иметь его, возвращают JSON.
Я довольно часто использую ajaxpro наряду с jQuery. ajaxpro позволяет мне вызвать функции.NET от JavaScript, и я использую jQuery для остальных.