首页 > php代码 > jquery与 ajax 简单例子

jquery与 ajax 简单例子

jquery与 ajax 简单例子

基于JQuery框架的AJAX

PS:本人这篇始发于PHPCHINA,发现被很多人转了,但却未注明出处,想了一下,还是自己转到这里来。

前几天发了个贴,分享了prototype框架关于AJAX方面的学习过程。然后有人说jquery框架更方便。

正好项目中准备使用thickbox,于是干脆抛弃prototype.js,看起jquery.js了。JQuery确实不错,体积比Prototype小了许多,而且使用起来更方便更灵活。有人说Prototype像JAVA,正统;而JQuery像Ruby,灵活,更趋于OOP。

小试了下AJAX,感觉比prototype简洁多了,在JQuery中,AJAX有三种实现方式:$.ajax(),$.post,$.get()。

XHTML(主要):

代码: 复制内容到剪贴板

<div id="result" style="backgroundrange;border:1px solid red;width:300px;height:400px;"></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">OST提交</button>

<button id="test_get">GET提交</button>

JS:

1、引入jquery框架:

代码: 复制内容到剪贴板

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

2、构建AJAX,JQUERY的好处是不需要在XHTML中使用JS代码来触发事件了,可以直接封装在JS文件中:

代码: 复制内容到剪贴板

<script type="text/javascript">
//$.ajax()方式
$(document).ready(function () {
    $('#send_ajax').click(function () { //直接把onclick事件写在了JS中,而不需要混在XHTML中了
        var params = $('input').serialize(); //序列化表单的值,与prototype中的form.serialize()相同
        $.ajax({
            url : 'ajax_test.php', //后台处理程序
            type : 'post', //数据发送方式
            dataType : 'json', //接受数据格式
            data : params, //要传递的数据
            success : update_page //回传函数(这里是函数名)
        });
    });
});
function update_page(json) { //回传函数实体,参数为XMLhttpRequest.responseText
    var str = "姓名:" + json.username + "";
    str += "年龄:" + json.age + "";
    str += "性别:" + json.sex + "";
    str += "工作:" + json.job;
    $("#result").html(str);
}
//$.post()方式:
$(function () { //$(document).ready(function (){ 的简写
    $('#test_post').click(function () {
        $.post('ajax_test.php', {
            username('#input1').val(),
            age('#input2').val(),
            sex('#input3').val(),
            job('#input4').val()
        },
            function (data) { //回传函数
            var myjson = '';
            eval('myjson=' + data + ';');
            $('#result').html("姓名:" + myjson.username + "工作:" + myjson['job']);
        });
    });
});
$.get()方式:
$(function () {
    $('#test_get').click(function () {
        $.get('ajax_test.php', {
            username("#input1").val(),
            age("#input2").val(),
            sex("#input3").val(),
            job("#input4").val()
        },
            function (data) {
            var myjson = '';
            eval("myjson=" + data + ";");
            $("#result").html(myjson.job);
        });
    });
});
</script>

PHP代码:

代码: 复制内容到剪贴板

<?php
    $arr=$_POST; //若以$.get()方式发送数据,则要改成$_GET.或者干脆_REQUEST
    $myjson=json_encode($arr);
    echo $myjson;


本文链接:http://www.phprm.com/code/66dc5a0ec824d16a9368f859c66bd08a.html

收藏随意^^请保留教程地址.

标签:none

发表留言