json和ajax结合使用(json与ajax一起用)
javascript用ajax向PHP传json格式数据,在PHP文件中应该怎样接?
你传送之前
alert(json.key)
看一下有没有变为正确json数据。
也可以这样
for(var
i
in
json){
alert(i+":"+json[i]);
}
ajax跨域请求json数据有几种方式
使用jquerygetJson进行跨域读取数据
实际getJson式根本原理ajax使用jsonp式
jquery用getJson调用获取远程数据并通json格式返函数原型:
jQuery.getJSON(url,data,success(data,status,xhr))
参数 描述
url 必需规定请求发送哪 URL
data 选规定连同请求发送服务器数据
success(data,status,xhr)
选规定请求功运行函数
额外参数:
response - 包含自请求结数据
status - 包含请求状态
xhr - 包含 XMLHttpRequest 象
该函数简写ajax函数实际等价于:
$.ajax({
url: url,
data: data,
success: callback,
dataType: json
});
言归传面我看何使用getJson跨域获取数据
html页面示例代码:
$.getJSON("xxx?",
function (data) {
alert(data);
}
);
执行原理:
发送请求需要传callback调函数名服务器端服务器端拿调函数名再返数据用参数形式反客户端客户端能够调
怎么用ajax解析json?
使用$.ajax()取得json对象的命令如下:
$.ajax( {
type : "POST",
url : "testjson!getJson.do",
dataType:"json",
cache:false,
async:false,
data : "",
success : function(data) {
//var object = eval("("+data+")");
$.each(data.list,function(index,item){
alert(item.trueName);
})
}
});
//其中设置 dataType:"json",使得返回来的数据格式为json。如果不添加该条属性,则返回来的为字符串。字符串对象可以通过eval("("+data+")")方法转成json对象,但该方法不推荐使用,对于取数据的操作同上。区分data为JSON对象还是字符串,可以通过alert语句进行打印,如果是Object object就是JSON对象,如果将内容显示出来则为字符串。
Ajax 即“Asynchronous Javascript And XML”(异步 JavaScript 和 XML),是指一种创建交互式网页应用的网页开发技术。
Ajax = 异步 JavaScript 和 XML(标准通用标记语言的子集)。
Ajax 是一种用于创建快速动态网页的技术。
Ajax 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。
如何使用ajax读取Json中的数据
html
!DOCTYPE?html?PUBLIC?"-//W3C//DTD?XHTML?1.0?Transitional//EN"?""
html?xmlns=""
head
meta?http-equiv="Content-Type"?content="text/html;?charset=utf-8"?/
title使用AJAX异步读取json/title
script?src="ajax.js"
/script
script
??window.onload=function()
??{
????/*获得按钮*/
????var?aBtn=document.getElementById('btn1');
????//给按钮添加点击事件
????aBtn.onclick=function()
????{
??????//调用ajax函数
??????ajax('data.json',function(str){
????????//将JSON?数据来生成原生的?JavaScript?对象
????????var?arr=eval(str);
????????alert(arr[0].b);
????});
????};
??};
/script
/head
body
读取json里面的数据?br?/
input?id="btn1"?type="button"?value="读取json里面的数据"?/
/body
/html
封装的AJAX函数代码如下:
/*
AJAX封装函数
url:系统要读取文件的地址
fnSucc:一个函数,文件取过来,加载完会调用
*/
function?ajax(url,?fnSucc,?fnFaild)
{
??//1.创建Ajax对象
??var?oAjax=null;
?
??if(window.XMLHttpRequest)
??{
????oAjax=new?XMLHttpRequest();
??}
??else
??{
????oAjax=new?ActiveXObject("Microsoft.XMLHTTP");
??}
?
??//2.连接服务器
??oAjax.open('GET',?url,?true);
?
??//3.发送请求
??oAjax.send();
?
??//4.接收服务器的返回
??oAjax.onreadystatechange=function?()
??{
????if(oAjax.readyState==4)?//完成
????{
??????if(oAjax.status==200)??//成功
??????{
????????fnSucc(oAjax.responseText);
??????}
??????else
??????{
????????if(fnFaild)
??????????fnFaild(oAjax.status);
??????}
????}
??};
}
如何使用ajax将json传入后台数据
以下代码是对$.ajax()的解析:
$.ajax({
type: "POST", //提交方式
contentType: "application/json; charset=utf-8", //内容类型
dataType: "json", //类型
url: "前台地址/后台方法", //提交的页面,方法名
data: "parameter", //参数,如果没有,可以为null
success: function (data) { //如果执行成功,那么执行此方法
alert(data.d); //用data.d来获取后台传过来的json语句,或者是单纯的语句
},
error: function (err) { //如果执行不成功,那么执行此方法
alert("err:" + err);
}
});

json如何使用
json一般都是配合ajax一起使用的 我做做过的小例子 粘给你 你可以研究一下
js部分
//获取卡的金额
function get_money(){
var str=document.getElementById("pk_card_type").value;
//alert(str);
var url = '/member_h.do';
var pars = 'method=getMoney';
pars+='pk_card_type='+str;
var ajax = new Ajax.Request(
url,
{method:'post',parameters:pars,onComplete:show_money}
);
}
//回调函数 写入卡的金额
function show_money(dataResponse)
{
var data = eval('(' + dataResponse.responseText + ')');
var price=0;
price=data.price;
var collection_fees=0;
collection_fees=data.collection_fees;
document.getElementById("recharge").value=price;
document.getElementById("collection_fees").value=collection_fees;
}
action部分
public ActionForward getMoney(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
response.setContentType("text/html; charset=utf-8");
try {
IElementaryFileService ggsv = new ElementaryFileService();
String pk_card_type = request.getParameter("pk_card_type");
Card_TypeVO ctvo=new Card_TypeVO();
ctvo=ggsv.queryByPK(Card_TypeVO.class, pk_card_type);
PrintWriter out = response.getWriter();
// 这里的数据拼装一般是从数据库查询来的
JSONObject jsonObject = new JSONObject();
if(ctvo!=null){
jsonObject.put("price", ctvo.getCard_money());
jsonObject.put("collection_fees", ctvo.getCash());
}else{
jsonObject.put("price", 0);
jsonObject.put("collection_fees", 0);
}
out.print(jsonObject.toString());
out.flush();
out.close();
return null;
} catch (Exception e) {
e.printStackTrace();
return null;
}
}