Используйте имя метода в параметре url
Аякса, как например: url: "Service.asmx/ConversionRate"
И если вы звоните веб-сервис, который находится в другом домене. Например: ваш .js-файл, в котором вы пишете функцию ajax, находится в www.abc.com
, и вы вызываете веб-службу в домене www.xyz.com
(т. е.), тогда вам необходимо использовать прокси-сервер с маршрутизацией, как показано ниже или использование jsonp в качестве междоменного вызова не допускается браузерами.
var url = 'http://www.webservicex.net/Service1.asmx/ConversionRate;
var yql = 'http://query.yahooapis.com/v1/public/yql?q=' + encodeURIComponent('select * from xml where url="' + url + '"') + '&format=json&callback=?';
$j.ajax({
type: "GET",
async: false,
url: yql,
dataType: 'XML',
//contentType:'application/json',
success: function (data) {
if(data.query.results){
var result = data.query.results.double.content.replace(/<script[^>]*>[\s\S]*?<\/script>/gi, '');
$j.each(result, function (index, element) {
alert("Successful here: " + element);
//$j('#json').append("<li'>"+element+"</li>");
});
}
}
});
Используйте либо success
или done
функции, так как оба они служат той же цели.
И если вы используете услугу из того же домена, то вышеуказанный прокси-сервер с сервером не нужен. Тогда код будет выглядеть следующим образом.
$j.ajax({
type: "GET",
async: false,
url: "Service1.asmx/GetConversion",
dataType: 'XML',
//contentType:'application/json',
success: function (data) {
$j.each(data, function (index, element) {
alert("Successful here: " + element);
//$j('#json').append("<li'>"+element+"</li>");
});
}
});
thankx alot его работа, пожалуйста, сообщите http 500 об ошибке – Hamid