jquery与 ajax 简单例子

jquery与 ajax 简单例子

基于JQuery框架的AJAXPS:本人这篇始发于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

pspan输入姓名:/spaninput type=text name=username id=input1 //p

pspan输入年龄:/spaninput type=text name=age id=input2 //p

pspan输入性别:/spaninput type=text name=sex id=input3 //p

pspan输入工作:/spaninput type=text name=job id=input4 //p

/form

button id=send_ajax提交/button

button id=test_postOST提交/button

button id=test_getGET提交/buttonJS:1、引入jquery框架:代码:
复制内容到剪贴板script type=text/javascript
src=../js/jquery.js/script2、构建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) { //回传函数实体,参数为XML

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

});

});

});

澳门新葡亰手机版,/scriptPHP代码:代码: 复制内容到剪贴板?php

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

$myjson=json_encode($arr);

echo $myjson;

?