在 ajax 的参数中使用您的方法名称,url
例如:url: "Service.asmx/ConversionRate"
如果您正在调用不同域中的 Web 服务 例如:您正在编写 ajax 函数的 .js 文件在其中,并且您正在(即)跨域调用www.abc.com
中调用 Web 服务,那么您需要使用服务器路由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>");
});
}
});