日期:2014-05-16 浏览次数:20730 次
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title></title>
<script type="text/javascript">
function search1()
{
var url="http://book.douban.com/subject_search?search_text="+document.getElementById('txtSearchValue').value;
var xmlhttp;
var returnData;
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
<!-- returnData=document.getElementById("txtHint").innerHTML=xmlhttp.responseText; -->
returnData=xmlhttp.responseText;
//alert(returnData);
document.getElementById("myDiv").innerHTML=returnData;
}
}
xmlhttp.open("GET",url,true);
xmlhttp.send();
}
</script>
</head>
<body>
<input type="text" name="" id="txtSearchValue" value="9787544745703" />
<button onclick="search1()">search1</button>
<div id="myDiv"><h2>Let AJAX change this text</h2></div>
</body>
</html>
一般会在本地服务器端做个代理,由服务器去取数据就不会有跨域问题了,客户端只是访问本地同源服务器的页面。
在手机上怎么做代理呢?
是在你自己的网站做一个页面,这个页面用服务器端xhr捉去远程数据,服务器端xhr没有跨域问题,这个就是代理页面
如果没有自己的站点无解,除非别人提供jsonp操作或者设置了Access-Control-Allow-Origin响应头允许你跨域请求这个页面
谢谢讲解,我在IIS建立了一个HTML页面,
然后在浏览器访问:http://localhost/douban_Search.html
结果:IE8,9可以接收到返回数据,
IE10,FireFox 25通过监控,都只看到请求并返回了200,但就是没有响应文本回来。
还是存在跨域?