我是jquery的新手。我正在嘗試使用html和jquery使用http://www.webservicex.net/geoipservice.asmx?op=GetGeoIP的Web服務。我寫了下面的代碼:嘗試使用jQuery使用Web服務時出錯
<!DOCTYPE html>
<page language ="html" validateRequest="false">
<html>
<head>
<title>Hello There</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"> type="text/javascript" > </script>
</head>
<body>
<div>
IPAddress: <input type="text" name="id" id="theId"/>
<br />
<button id="getRemoteResponseBt">Get remote response</button>
</div>
<script>
var url='http://www.webservicex.net/geoipservice.asmx?op=GetGeoIP';
var dataMessage=
'<?xml version="1.0" encoding="utf-8"?> \
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> \
<soap:Body> \
<GetGeoIP xmlns="http://www.webservicex.net/"> \
<IPAddress>+theId.val()+</IPAddress> \
</GetGeoIP> \
</soap:Body> \
</soap:Envelope>';
$("#getRemoteResponseBt").click(function() {
$.ajax({
url: url,
dataType: "xml",
data: dataMessage,
processData: false,
contentType: "text/xml; charset=\"utf-8\"",
success: function(text) {
var xml = $(text);
var id = xml.find('IP').text();
var name = xml.find('CountryName').text();
var code = xml.find('CountryCode').text();
alert("Result:" + id +name+code);
},
error:function (xhr) {
alert(xhr.responseText+"Error");
}
});
return false;
});
</script>
</body>
</html>
但是,當我點擊按鈕,每次它給出錯誤。任何人都可以幫助使代碼工作?對於Web服務描述檢查鏈接:http://www.webservicex.net/geoipservice.asmx?op=GetGeoIP
*究竟是什麼*錯誤? – deceze
感謝您的快速回復。我在警報中將錯誤顯示爲「未定義」。您可以在html文件中運行此代碼並檢查。 – user3181494
是否調用成功函數?或者錯誤功能?文字的內容是什麼? 'xml'的內容? 'id'的內容? 'name'? 'code'? – Ishtar