国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > ASP > 正文

asp ajax跨域提交數據

2024-05-04 11:09:06
字體:
來源:轉載
供稿:網友
需要一個js函數.當每出來一條記錄時,就把ip替換為城市
 
 
 
星期五寫了個分類信息的小東東!在數據庫里只有ip地址,一般訪客不太清楚IP地址來源于哪個城市.如果在表里多一個列保存城市又沒有真實性可言.如果能把IP地址變成城市多好呀.當然可以去down下數據庫.可就為這個需求覺得有點浪費.還好了有好多網站提供查詢.如果能把它的結果變成我的.問題解決. 
需要一個js函數.當每出來一條記錄時,就把ip替換為城市: 
復制代碼代碼如下:

<script type="text/javascript"> 
function queryAddress(strID){ 
try{ 
var qIp=document.getElementById("ip_"+strID); 
var qUrl='http://ip.wanvee.cn/GetIp.ashx?ipstr='+qIp.firstChild.nodeValue; 
var ajax=new Ajax.Request(qUrl,{ 
method:'get', 
onSuccess:function(strResponse){ 
var resContent=strResponse.responseText; 
var strStruct=resContent.substring(resContent.lastIndexOf(",")+1,resContent.length); 
qIp.innerHTML=strStruct.split(" ")[0]; 

}); 
}catch(e){} 

</script> 

寫一個測試用例: 
<span id="ip_2">221.123.123.123</span><script type="text/javascript">queryAddress('2')</script> 
<span id="ip_3">221.123.123.123</span><script type="text/javascript">queryAddress('3')</script> 
<span id="ip_4">221.123.123.123</span><script type="text/javascript">queryAddress('4')</script> 
羅列一下我找的幾個查詢網址: 
http://www.ip.cn/getip.php?action=queryip&ip_url=221.123.123.123 
http://ip.wanvee.cn/GetIp.ashx?ipstr=221.123.123.123 
以上兩個只返回文本 
http://www.youdao.com/smartresult-xml/search.s?type=ip&q=221.123.123.123 
這個返回XML 
寫完了,意識到一個問題.ajax不支持跨域提交.這也不成問題:我們用腳本寫一個頁面.用msxml的load方法裝載目標網址!就可以搞到我們感興趣的數據!參考此貼:http://topic.csdn.net/t/20030619/12/1933920.html 
js代碼稍微變一下: 
復制代碼代碼如下:

function queryAddress(strID){ 
try{ 
var qIp=document.getElementById("ip_"+strID); 
var qUrl='queryiplocal.asp?ip='+qIp.firstChild.nodeValue; 
var ajax=new Ajax.Request(qUrl,{ 
method:'get', 
onSuccess:function(strResponse){ 
qIp.innerHTML=strResponse.responseText; 

}); 
}catch(e){} 

下面的是ASP文件源碼: 
復制代碼代碼如下:

<% 
Response.ContentType="text/xml" 
Response.Charset="GB2312" 
Dim strIP,strPattern 
strIP=Request.QueryString("ip") 
strPattern="^[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}$" 
If strIP="" Or IsNumeric(strIP) then 
Response.End() 
ElseIf Not serRegValidate(strPattern,strIP) then 
Response.End() 
End If 
Dim strURL:strURL="http://www.youdao.com/smartresult-xml/search.s?type=ip&q=" 
set parser=Server.CreateObject("MSXML2.DOMDocument") 
parser.async=false 
parser.ValidateOnParse=true 
parser.setProperty "ServerHTTPRequest",true 
parser.load(strURL) 
if parser.parseError.errorCode<>0 then 
Response.End() 
end if 
set currNode=parser.selectNodes("//product") 
Dim strLocal:strLocal=currNode.item(0).selectSingleNode("location").text 
Response.Write Split(strLocal," ")(0) 
%>

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 张家港市| 赤壁市| 普兰店市| 昌邑市| 临沭县| 明光市| 晴隆县| 福安市| 酉阳| 玉林市| 昂仁县| 平安县| 陵川县| 安达市| 河北省| 和平区| 留坝县| 青海省| 盐边县| 吉水县| 三河市| 邹平县| 黔南| 辽宁省| 修武县| 大理市| 枣阳市| 宜川县| 通州区| 唐海县| 沂源县| 伊金霍洛旗| 宜宾县| 万宁市| 自治县| 湘潭县| 饶阳县| 昌平区| 沙湾县| 馆陶县| 嘉义县|