JavaScript怎么获取服务端返回的json?

JavaScript011

JavaScript怎么获取服务端返回的json?,第1张

用jquery的ajax组件可以很快实现js发送请求。参考以下JS代码:

<script>

$(function(){

var url = "http://abc.com"//你的请求url

//发起get请求

$.get(url, function(res){

console.log('ajax_get========', res)

},'json')

})

//发起post请求

var postdata = {

'id':'123'

}//post提交的参数

$.post(url, postdata, function(res){

console.log('ajax_get========', res)

},'json')

})

</script>

post的话是没有办法直接获取得

如果是同一个页面,考虑直接用js函数获取,不提交

如果是不同页面,只能通过ajax变成get方式

get的话,一个正则.二是split,具体如下

办法一: 正则

function getAction(name) {

var reg = new RegExp("(^|&)" + name

+ "=([^&]*)(&|$)", "i")

var r =

window.location.search.substr(1).match(reg)

if (r != null) return

unescape(r[2])return null

}

办法二: split

function getAction() {

var url = location.search//获取url中"?"符后的字串

var theRequest = new Object()

if (url.indexOf("?") != -1) {

var str = url.substr(1)

 strs = str.split("&")

 for(var i = 0i <strs.lengthi ++) {

theRequest[strs[i].split("=")[0]]=(strs[i].split("=")[1])

 }

 }

return theRequest

}

用jquery来接收。jquery有个方法叫做getjson(),给你看一个具体例子

<script type="text/javascript" src="js/jquery-1.7.1.min.js"></script>

<script type="text/javascript">

function getHouseByConditions() {

var data = {typeId:$('#housetype').val(),districtId:$('#district').val(),

price:$('#price').val(), floorage:$('#floorage').val()}

$.getJSON('conSearch', data, function(x) {

}

})

}

</script>

这里,conSearch是你发送ajax请求时请求的url,data是你发送给url的的json对象,x是url返回给你的json对象。