Heim  >  Artikel  >  php教程  >  jQuery、Ajax、PHP、Json的一个综合例子

jQuery、Ajax、PHP、Json的一个综合例子

WBOY
WBOYOriginal
2016-06-06 19:52:241039Durchsuche

jQuery 是一个优秀的 Javascript 框架,对 js 进行了优秀的包装,提供了许多方便的功能。jQuery 对 ajax 的包装也堪称优秀。 jQuery 可以以 json 文件传输协议来传输数据(类 xml,而且大有取代 xml 的趋势),而网站后台代码必须与之配合使用。PHP 是用 json_

jQuery 是一个优秀的 Javascript 框架,对 js 进行了优秀的包装,提供了许多方便的功能。jQuery 对 ajax 的包装也堪称优秀。

jQuery 可以以 json 文件传输协议来传输数据(类似 xml,而且大有取代 xml 的趋势),而网站后台代码必须与之配合使用。PHP 是用 json_encode 函数来对返回的数组数据进行编码的,但这个函数只有 PHP5.2版本以上才支持。

从网上找到一个 json 的操作类,本人在 PHP4.4.7 版本下测试通过。本人还建了个函数 function my_json_encode($phparr),使代码兼容 PHP5.2 以上版本。

示例代码(包括 json 的类包软件)可以在以下网址下载:http://download.csdn.net/source/810895

以下是全部代码:

    
    
    <title>jQuery Ajax 实例演示</title>
    
    <script language="”javascript”" src="%E2%80%9D../lib/jquery.js%E2%80%9D"></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 ()
    {
    $.get(
    ‘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>
    

    <div id="”result”" style="”background:orange;border:1px" solid red></div>
    

输入姓名:

输入年龄:

输入性别:

输入工作:


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);
    }
    }
    ?>


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:php底层深度探索(4)Nächster Artikel:php表单提交至数据库