我一直试图从这个Ajax命令中获得结果,但最终只是以失败告终
$.ajax({
type: "get",
url: "http://[localhost]:80**/*****/getdata.jws",
data: 'method=s**&Table=empservice&Condition=%22ID_Service%22%3D'+$(this).val()+'',
success: processSuccess,
error: processError
});
function processSuccess(data, status, req) {
if (status == "success")
alert("SUCCESS");
}
function processError(data, status, req) {
alert("ERROR");
}
}
});
这应该调用jws web服务并返回XML结果,我在浏览器中测试了URL,它返回了想要的结果XML(URL是url连接到“?”和data = http: // [localhost ]:80/*/getdata.jws?method=s**&Table=empservice&Condition=%22ID_Service%22%3D2)I'我还试图在调用之前创建一个变量来将$(this).val()放入其中但是没有任何工作可以帮助
ps:在通话结束后,我收到包含“错误”消息的警告弹出窗口
ps2:你可能知道但是无论如何我会说它[localhost] = localhost因为网站不允许在链接中使用localhost
答案 0 :(得分:1)
尝试将错误处理程序更改为类似的内容,这样您获得的信息不仅仅是“错误”。这会将实际错误写入Firebug控制台。另外,请查看Firebug控制台以查看实际发送的内容。我假设你知道我指的是带有Firebug插件的Firefox。
error : function(xhr, textStatus, error){
console.log(xhr.statusText);
console.log(textStatus);
console.log(error);
TD
答案 1 :(得分:1)
我发现它,我需要使用代理,因为AJAX调用不允许在一个域之外
如果您的域名 localhost:80
来自localhost的调用:80到localhost:8081例如不允许
来自localhost的电话:80到sdlksdlk.com是不允许的
只允许从localhost:80到localhost:80的调用(当然在这个例子中)