我在本机部署了两个项目
[WebMethod(Description = "测试方法")]
public string GetHelloWorld()
{
return "hello world";
}
这个webservice部署在192.168.101:80上面
还有个项目部署到192.168.1.101:100上面
有个default.asp页面,用jquery请求A项目上的gethelloworld
$(document).ready(function () {
$.ajax({
type: "POST",
url: "http://192.168.1.101:80/WebService1.asmx/GetHelloWorld",
dataType: "json",
contentType: "application/json; charset=utf-8",
data: "{}",
success: function (json) { alert(json.d); },
error: function (error) {
alert("调用出错" + error.responseText);
}
});
});
这样火狐既然json报null了 就是拿不到数据,IE就弹出hell world
弄了一天也没明白什么回事
ajax 是不可以跨站调用的,你想用AJAX调用WebService1 我看没戏,想其他法子把,脚本是可以调用的,你百度一下 jquery ajax 跨域看看
把post改成get试试
get的话连ie都报错 直接程序错误
你这个应该是跨域的问题
直接在服务器上测试一下脚本看有没有问题,或者你把http://192.168.1.101加到客户端的信任网站,设定安全性为低试试看
应该是跨域提交的问题,在js文件上加上document.domain = 'xxx.com';例如:document.domain = 'cnblogs.com';
跨域要用jsonp,你去搜下jsonp的相关内容,三言两语说不清楚。