A jQuery AJAX无刷新评论_Ajax编程_黑客防线网安服务器维护基地--Powered by WWW.RONGSEN.COM.CN

A jQuery AJAX无刷新评论

作者:黑客防线网安Ajax教程基地 来源:黑客防线网安Ajax教程基地 浏览次数:0

本篇关键词:评论刷新提交编码
黑客防线网安网讯:  做公司网站时的一个应用,用猫东的表单验证插件做实时的验证,和jquery的ajax提交数据,获取评论的时候加入简单的分页  原理很简单,注意一下编码问题就行了  实现了获取评论无刷新...

  做公司网站时的一个应用用猫东的表单验证插件做实时的验证和jquery的ajax提交数据,获取评论的时候加入简单的分页

  原理很简单,注意一下编码问题就行了

  实现了获取评论无刷新,发表评论无刷新,页面获取评论时显示loading加载效果

  jquery真的是一个非常优秀的JS库,简单容易掌握,对于网页中的多级菜单、级联效果、Tab选项卡切换、图片轮转显示,实现起来都非常的简单,往往就是几句代码的事

  做AJAX应用,jquery提供的$.get()、$.post()函数都可以用于提交数据,但建议使用$.ajax()来提交,那两个函数都不提供错误返回信息,不利全面掌控

  看代码实现,这里我删减了一部分,便于说明(comments.asp):

$(function(){
  //页面初始化时获取评论内容
  getComments(1);
});
//获取评论内容
function getComments(pageno){
  $.ajax({
    type:"GET",
    url:"proc_comments.asp",
    data:"action=getComments&id=44&page="+pageno+"&num="+Math.round(Math.random()*10000),
    error:function(){$("#comm_list table tr td").html("获取评论信息失败");},
    success:function(comments_data){
      $("#comm_list").html(comments_data);
    }
  });
}

  //添加评论到数据库,同时更新显示,注意escape编码后提交

function addComments(){
  if($.formValidator.pageIsValid()){
    $.ajax({
      type:"POST",
      url:"proc_comments.asp",
      data:"action=addcomments&id=44&comm_user="+escape($("#comm_user").val())+"&comm_content="+escape($("#comm_content").val()),
      success:function(){
        getComments(1);
      }
    });
  }
}

 这里的$.formValidator.pageIsValid()猫东的表单验证插件的一个表单验证函数,我用button替代了原有的submit,在它的onclick事件中添加addComments()函数提交评论,为避免空提交,这里提交前先做验证。

  提交数据是action代表要执行的操作,id传递文章id,page是请求的分页页面,Math.round(Math.random()*10000)防止页面被浏览器缓存而导致暂时无法刷新,如果出错显示错误信息

  客户端用escape()函数编码含中文的字符串,服务器端用unescape()解码,这样做是为了防止乱码,如果你采用的是utf8,那就不必了,设置正确的页面编码和服务端脚本编码就不会出问题。由于jquery默认使用utf8传输数据,而且不提供设置编码,这里只有自己做转换,如果你用form插件的时候就会发现,编码问题是不能回绝的,看来以后得向utf8看起了,呵呵!

    黑客防线网安服务器维护方案本篇连接:http://www.rongsen.com.cn/show-15625-1.html
网站维护教程更新时间:2012-04-05 00:04:25  【打印此页】  【关闭
我要申请本站N点 | 黑客防线官网 |  
专业服务器维护及网站维护手工安全搭建环境,网站安全加固服务。黑客防线网安服务器维护基地招商进行中!QQ:29769479

footer  footer  footer  footer