我使用jquery ajax调用web方法。对Web方法的调用如下所示
function test() {
$.ajax({
type: "POST",
url: "DashboardAdminService.asmx/GetSecureKey",
dataType: "xml",
success: function(response) {
$("#KeyDetailsTable").find("tr:gt(0)").remove();
$(response).find("SecureKey").each(function() {
if ($(this).find('Status').text() == "Active")
$('#KeyDetailsTable > tbody').append('<tr><td>' + $(this).find('ID').text() + '</td><td>' + $(this).find('KeyName').text() + '</td><td>' + $(this).find('Description').text() + '</td><td id=' + $(this).find('ID').text() + '><a href=' + '#' + ' onclick=\'createPopup(' + $(this).find('ID').text() + ');\'>View</a><br /><a href=' + '#' + ' onclick=\'deactivateKey(' + $(this).find('ID').text() + ');\'>Deactivate</a></td></tr>')
else
$('#KeyDetailsTable > tbody').append('<tr><td>' + $(this).find('ID').text() + '</td><td>' + $(this).find('KeyName').text() + '</td><td>' + $(this).find('Description').text() + '</td><td id=' + $(this).find('ID').text() + '><a href=' + '#' + ' onclick=\'createPopup(' + $(this).find('ID').text() + ');\'>View</a><br /><a href=' + '#' + ' onclick=\'activateKey(' + $(this).find('ID').text() + ');\'>Activate</a></td></tr>')
});
},
failure: function() { alert("failed"); }
});
}
这在本地计算机上工作正常,但在服务器中托管时,Web方法调用不起作用,并且发生内部服务器错误。
答案 0 :(得分:0)
如果您在不同的域中拥有服务URL,那么Ajax方法肯定会失败,因为“跨浏览器”兼容性存在限制。