2013-02-13 45 views
0

我正在使用ajax調用web服務。該服務接受2個參數並以JSON形式返回數據。ajax在調用WEB服務時返回UNDEFINED,甚至web服務也未被調用

但是,當我打電話給web服務,那麼它不被稱爲。警報拋出異常 UNDEFINED

我不知道它爲什麼這樣做。整個html代碼如下。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 
<head> 
<meta content="text/html;charset=utf-8" http-equiv="Content-Type"> 
<meta content="utf-8" http-equiv="encoding"> 
<title>Decision Maker</title> 
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script> 
<script type="text/javascript"> 


$(document).ready(function() { 
$("#SayHello").click(function (e) { 

$.ajax({ 
type: "POST", 
data: "{'userName':'5021','Password':'35A3C84D'}", 
url: "http://www.iclinic247.com/authenticateusers.asmx/LoggedUserAuthentication", 
contentType: 'application/json; charset=utf-8', 
dataType: "json", 
success: 
function (data) { 
alert('Success'); 
alert(data); 
}, 
error: 
function (XMLHttpRequest, textStatus, errorThrown) { 
alert('Fail'); 
alert(errorThrown); 
} 
}); 
}); 
}); 



</script> 
</head> 
<body> 
<input id="name" /><a id="SayHello" href="#">Greetings!</a> 
</body> 
</html> 

任何一個可以告訴我這是什麼問題

+0

當我運行它時,我得到'成功',並且數據爲空。你確定web服務正在返回? – 2013-02-13 19:42:43

+0

'EXCEPTION undefined'或'Fail undefined'。巨大差距。 – 2013-02-13 19:48:43

+0

@ E.J。布倫南當我在Mozilla上運行它時,它返回success.but但當我在Internet Explorer上運行它,然後它失敗的條件。並拋出錯誤UNDEFINED – Varinder 2013-02-14 04:29:06

回答

1

如果你可以使用Firebug的控制檯,而在Firefox或開發者選項控制檯(通過使用F12鍵)在Chrome,那麼你可能會得到錯誤說法類似如下:

Failed to load resource: the server responded with a status of 404 (Not Found) 
XMLHttpRequest cannot load http://www.iclinic247.com/authenticateusers.asmx/LoggedUserAuthentication. Origin null is not allowed by Access-Control-Allow-Origin. 

所以基本上,在服務器端的問題,而你的前端代碼,這部分是正確的。所以要麼你有一個拼寫錯誤的網址或其他東西在這裏愚蠢,因爲404告訴我們。

0

討論問題,我的前輩後,我才知道,問題發生由於跨域CALLING

* 我解決了這個問題通過使我的服務作爲RESTFUL服務,即我的服務的API。 *