关于jQuery页面刷新(局部、全部)问题

46 篇文章 1 订阅

关于jQuery页面刷新(局部、全部)问题

第一:页面局部刷新:

jQuery对Ajax操作进行了封装,在jQuery中$.ajax()方法属于最底层的方法,第2层是laod()、$.get()和$.post()方法,第3层是$.getScript()和$.getJSON()方法。

 

$.ajax()Code

 

load()方法通常用来从Web服务器上获取静态的数据文件.要传递一些参数给服务器中的页面,那么可以使用$.get()或者$.post()方法$.ajax方法

复制代码
1 //无参数传递,则是GET方式
2 $("#resText").load("test.php",function(){
3 //......
4 });
5 
6 //有参数传递,则是POST方式
7 $("#resText").load("test.php",{name:"xht555",age:"24"},function(){
8 //......
9 }); 
复制代码

 

 

简单说一下 post 与get 区别:

get:用get方式可传送简单数据(即:浏览器将各个表单字段元素及其数据按照URL参数的格式附加在url后面),但大小一般限制在1KB下;被客户端的浏览器缓存起来,不安全。

post:览器把各表单字段元素及其数据作为HTTP消息的实体内容发送给Web服务器,而不是作为URL地址的参数进行传递,  

总结:

一:GET方式传送数据量小,处理效率高,安全性低,会被缓存,而POST反之。 

二:AJAX乱码问题 
产生乱码的原因: 
1、xtmlhttp 返回的数据默认的字符编码是utf-8,如果客户端页面是gb2312或者其它编码数据就会产生乱码 
2、post方法提交数据默认的字符编码是utf-8,如果服务器端是gb2312或其他编码数据就会产生乱码 

解决办法有: 
1、若客户端是gb2312编码,则在服务器指定输出流编码 

2、服务器端和客户端都使用utf-8编码 

gb2312:header('Content-Type:text/html;charset=GB2312'); 

utf8:header('Content-Type:text/html;charset=utf-8'); 

注 意:如果你已经按上面的方法做了,还是返回乱码的话,检查你的方式是否为get,对于get请求(或凡涉及到url传递参数的),被传递的参数都要先经 encodeURIComponent方法处理.如果没有用encodeURIComponent处理的话,也会产生乱码 

复制代码
 1 //$.post()方式:
 2 $('#test_post').click(function (){
 3     $.post(
 4       'ajax_json.php',
 5       {
 6         username:$('#input1').val(),
 7         age:$('#input2').val(),
 8         sex:$('#input3').val(),
 9         job:$('#input4').val()
10       },
11       function (data) //回传函数
12       {
13         var myjson='';
14         eval('myjson=' + data + ';');
15         $('#result').html("姓名:" + myjson.username + "<br/>工作:" + myjson['job']);
16       }
17     );
18    });
复制代码
复制代码
 1 //$.get()方式:
 2 $('#test_get').click(function ()
 3 {
 4     $.get(
 5       'ajax_json.php',
 6       {
 7         username:$("#input1").val(),
 8         age:$("#input2").val(),
 9         sex:$("#input3").val(),
10         job:$("#input4").val()
11       },
12       function(data) //回传函数
13       {
14         var myjson='';
15         eval("myjson=" + data + ";");
16          $('#result').html("姓名:" + myjson.username + "<br/>工作:" + myjson['job']);
17       }
18     );
19 });
20 
21 
22 });
复制代码
1 $.getJson(”Default.php”, {id:”1″, page: “2″ },
2 function(data){
3 //注意,这里返回的JSON数据格式,不同于xml.
4 });

 关于GetJson: demo 详见:http://www.cnblogs.com/jams742003/category/225387.html

第二:页面全部刷新:

1 window.location.reload()刷新当前页面.
2 parent.location.reload()刷新父亲对象(用于框架)
3 opener.location.reload()刷新父窗口对象(用于单开窗口)
4 top.location.reload()刷新最顶端对象(用于多开窗口)

 

参考资料:

tks:

http://friendship517.blog.163.com/blog/static/5705127820091131113932372/  

http://dhjdhja.blog.163.com/blog/static/64721136201277101839334/

http://hi.baidu.com/wangjijun/item/6d881ad6568e34cb1b72b453

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值