Я пытаюсь использовать jQuery для получения данных из веб-службы ASP.NET(SharePoint Server 2007 lists.asmx), но любой вызов веб-службы действительно поможет в качестве первого шага в этом направлении.
Как использовать jQuery для вызова веб-службы ASP.NET?
Ответ 1
Я использую этот метод как оболочку, чтобы я мог отправлять параметры. Также использование переменных в верхней части метода позволяет минимизировать его с более высоким коэффициентом и позволяет повторное использование кода при выполнении нескольких похожих вызовов.
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, которые могут быть использованы таким образом.
Ответ 2
Вот пример вызова вашего веб-сервиса с помощью jQuery.get:
$.get("http://domain.com/webservice.asmx", { name: "John", time: "2pm" },
function(data){
alert("Data Loaded: " + data);
});
В приведенном выше примере мы называем "webservice.asmx", передавая два параметра: имя и время. Затем, получив выход службы в функции обратного вызова.
Ответ 3
Я не знаю об этом конкретном веб-сервисе SharePoint, но вы можете украсить метод страницы или веб-службу с помощью <WebMethod()>
(в VB.NET), чтобы убедиться, что она сериализуется в JSON. Вероятно, вы можете просто обернуть метод, который webservice.asmx использует внутренне, в вашем собственном веб-сервисе.
Дэйв Уорд хорошее прохождение по этому вопросу.
Ответ 4
$.ajax({
type: 'POST',
url: 'data.asmx/getText',
data: {'argInput' : 'input arg(s)'},
complete: function(xData, status) {
$('#txt').html($(xData.responseXML).text()); // result
}
});
Ответ 5
У меня есть достойный пример в jQuery AJAX и ASMX при использовании вызова jQuery AJAX с веб-службами asmx...
Существует некоторая строка кода, чтобы вернуть JSON.
Ответ 6
SPServices - это библиотека jQuery, которая абстрагирует SharePoint Web Services и упрощает их использование.
сертифицировано для SharePoint 2007
Список поддерживаемых операций для List.asmx можно найти здесь
Пример
В этом примере мы захватываем все элементы в списке Анонсов и показываем заголовки в маркированном списке в taskUL div:
<script type="text/javascript" src="filelink/jquery-1.6.1.min.js"></script>
<script type="text/javascript" src="filelink/jquery.SPServices-0.6.2.min.js"></script>
<script language="javascript" type="text/javascript">
$(document).ready(function() {
$().SPServices({
operation: "GetListItems",
async: false,
listName: "Announcements",
CAMLViewFields: "<ViewFields><FieldRef Name='Title' /></ViewFields>",
completefunc: function (xData, Status) {
$(xData.responseXML).SPFilterNode("z:row").each(function() {
var liHtml = "<li>" + $(this).attr("ows_Title") + "</li>";
$("#tasksUL").append(liHtml);
});
}
});
});
</script>
<ul id="tasksUL"/>
Ответ 7
Я довольно часто использую ajaxpro вместе с jQuery. ajaxpro позволяет мне вызывать функции .NET из JavaScript, и я использую jQuery для остальных.