Ajax调用工作正常在我的机器上,但不在服务器上
问题描述:
下面的代码做工精细自己的计算机上运行时 -Ajax调用工作正常在我的机器上,但不在服务器上
$.ajax({
url: 'services/chatEngine.asmx/addUser',
type: "POST",
data: {
UN: from,
chatapplicationId: '222'
},
dataType: "xml",
async: false,
cache: false,
beforeSend: function() {
usersScrollLocation = document.getElementById('userList').scrollTop;
//alert('before');
},
fail: function() { alert('Error'); },
complete: function() { alert('Done'); },
success: function (a, b, c) {
alert('success');
if (window.DOMParser) {
parser = new DOMParser();
try {
xmlDoc = parser.parseFromString(c.responseXML.lastChild.lastChild.data, "text/xml");
}
catch (e) { alert(e.Message) }
}
else // Internet Explorer
{
xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async = false;
xmlDoc.loadXML(c.responseXML.lastChild.lastChild.data);
}
//alert('b4 If');
if (xmlDoc.getElementsByTagName('user')[0].childNodes[0].nodeValue != 'Error') {
var el = xmlDoc.getElementsByTagName('user')[0].childNodes[0].nodeValue;
var t;
//if (el != from) {
t = '<span style="cursor:pointer" onclick="newPrivateChat(\'' + el + '\');">' + el + '</span>' + '<br>';
//}
//else {
// t = '<span><b>' + el + '</b></span>' + '<br>';
//}
$('#userList').append(t);
userok = true;
}
}
});
的代码工作在我的机器上很好,但在服务器上运行ajax.success时功能从未被称为...
我看不出什么问题,请协助。
感谢,
答
我认为这个问题是路径是不是服务器不是在本地上是相同的,因为应用程序/虚拟文件夹名称。在Chrome上打开它,使用开发人员工具,您可以在网络标签上查看它试图访问的真实URL,也许你会发现你错过了什么
任何错误?完成被叫吗?你能直接访问URL吗? – 2012-04-04 15:40:21
@Shai使用fiddler并查看请求的响应是什么。它可以帮助你弄清楚什么是错的 – Qpirate 2012-04-04 15:51:52