首页 > 编程 > JavaScript > 正文

jQuery基于ajax操作json数据简单示例

2019-11-19 18:08:15
字体:
来源:转载
供稿:网友

本文实例讲述了jQuery基于ajax操作json数据的方法。分享给大家供大家参考,具体如下:

jQuery Ajax 实例演示

jQuery Ajax 的三种格式,在与后台进行数据交互的时候可以是json格式也可以是xml格式,本人建议将数据转化成json格式。

Xml与json的比较

1、可读性

JSON和XML的可读性可谓不相上下,一边是建议的语法,一边是规范的标签形式,很难分出胜负。

2、可扩展性

XML天生有很好的扩展性,JSON当然也有,没有什么是XML能扩展,JSON不能的。

3、编码难度

XML有丰富的编码工具,比如Dom4j、JDom等,JSON也有json.org提供的工具,但是JSON的编码明显比XML容易许多,即使不借助工 具也能写出JSON的代码,可是要写好XML就不太容易了。

4、解码难度

XML的解析得考虑子节点父节点,让人头昏眼花,而JSON的解析难度几乎为0。这一点XML输的真是没话说。

<html><head><title>jQuery Ajax 实例演示</title></head><script language="javascript" src="../lib/jquery.js"></script><script language="javascript">$(document).ready(function (){  $('#send_ajax').click(function (){   var params=$('input').serialize(); //序列化表单的值   $.ajax({    url:'ajax_json.php', //后台处理程序    type:'post',     //数据发送方式    dataType:'json',   //接受数据格式    data:params,     //要传递的数据    success:update_page //回传函数(这里是函数名)   });  });//$.post()方式:$('#test_post').click(function (){  $.post(   'ajax_json.php',   {    username:$('#input1').val(),    age:$('#input2').val(),    sex:$('#input3').val(),    job:$('#input4').val()   },   function (data) //回传函数   {    var myjson='';    eval('myjson=' + data + ';');    $('#result').html("姓名:" + myjson.username + "<br/>工作:" + myjson['job']);   }  );  });//$.get()方式:$('#test_get').click(function () 'ajax_json.php',   {    username:$("#input1").val(),    age:$("#input2").val(),    sex:$("#input3").val(),    job:$("#input4").val()   },   function(data) //回传函数   {    var myjson='';    eval("myjson=" + data + ";");    $("#result").html(myjson.job);   }  );});});function update_page (json) //回传函数实体,参数为XMLhttpRequest.responseText{var str="姓名:"+json.username+"<br />";str+="年龄:"+json.age+"<br />";str+="性别:"+json.sex+"<br />";str+="工作:"+json.job+"<br />";str+="追加测试:"+json.append;$("#result").html(str);}</script><body><div id="result" style="background:orange;border:1px solid red;width:300px;height:200px;"></div><form id="formtest" action="" method="post">  <p><span>输入姓名:</span><input type="text" name="username" id="input1" /></p>  <p><span>输入年龄:</span><input type="text" name="age" id="input2" /></p>  <p><span>输入性别:</span><input type="text" name="sex" id="input3" /></p>  <p><span>输入工作:</span><input type="text" name="job" id="input4" /></p></form><button id="send_ajax">提交</button><button id="test_post">POST提交</button><button id="test_get">GET提交</button></body></html>

PHP 文件 ajax_json.php:

<?php//$arr = $_POST; //若以$.get()方式发送数据,则要改成$_GET.或者干脆:$_REQUEST$arr = $_REQUEST;$arr['append'] = '测试字符串';//print_r($arr);$myjson = my_json_encode($arr);echo $myjson;function my_json_encode($phparr){  if(function_exists("json_encode"))  {   return json_encode($phparr);  }  else  {   require_once 'json/json.class.php';   $json = new Services_JSON;   return $json->encode($phparr);  }}?>

PS:关于json操作,这里再为大家推荐几款比较实用的json在线工具供大家参考使用:

在线JSON代码检验、检验、美化、格式化工具:
http://tools.VeVB.COm/code/json

JSON在线格式化工具:
http://tools.VeVB.COm/code/jsonformat

在线XML/JSON互相转换工具:
http://tools.VeVB.COm/code/xmljson

json代码在线格式化/美化/压缩/编辑/转换工具:
http://tools.VeVB.COm/code/jsoncodeformat

在线json压缩/转义工具:
http://tools.VeVB.COm/code/json_yasuo_trans

C语言风格/HTML/CSS/json代码格式化美化工具:
http://tools.VeVB.COm/code/ccode_html_css_json

更多关于jQuery相关内容感兴趣的读者可查看本站专题:《jquery中Ajax用法总结》、《jQuery form操作技巧汇总》、《jQuery常用插件及用法总结》、《jQuery操作json数据技巧汇总》、《jQuery扩展技巧总结》、《jQuery拖拽特效与技巧总结》、《jQuery表格(table)操作技巧汇总》、《jQuery常见经典特效汇总》、《jQuery动画与特效用法总结》及《jquery选择器用法总结

希望本文所述对大家jQuery程序设计有所帮助。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表