ajax无刷新评论功能

这是留言板的界面,当用户点击提交留言的时候,自动提交到我的留言下面

留言内容中为空,或者为灰色的“没有填写留言内容”都会弹出 请填写留言内容,当用户填写信息的会在右下角显示当前留言的字数。

下面是javascript的代码

//去掉左右尖括号 并用去掉空格后的字符串替代显示
function replaceBrackets(id) {
  var inputValue = $("#" + id).val();
  while (inputValue.indexOf("<") != -1) {
    inputValue = inputValue.replace("<", "[");
  }
  while (inputValue.indexOf(">") != -1) {
    inputValue = inputValue.replace(">", "]");
  }
  while (inputValue.indexOf("&") != -1) {
    inputValue = inputValue.replace("&", " ");
  }
  $("#" + id).val(inputValue);
} 

function replaceChar(name, char) {
  var inputValue = $("#" + name).val();
  while (inputValue.indexOf(char) != -1) {
    inputValue = inputValue.replace(char, "");
  }
  return inputValue;
} 

$("#txtMessage").blur(function () {
  $("#txtMessage").val(replaceChar("txtMessage", "<!--"));
  if ($("#txtMessage").val() == "") {
    document.getElementById("txtMessage").style.color = "#8C8C8C";
    $("#txtMessage").val("没有填写留言内容");
    return false;
  }
  replaceBrackets("txtMessage");
  return true;
}); 

$("#txtMessage").focus(function () {
  if ($("#txtMessage").val() == "没有填写留言内容") {
    document.getElementById("txtMessage").style.color = "#000000";
    $("#txtMessage").val("");
  }
}); 

function txtanum(id, name)  //统计txta的输入字数
{
  var maxl = 151;
  var num = 150;
  var content = $("#" + id).val();
  content.slice(0, maxl);
  var nowlength = content.length;
  if (nowlength >= 0) {
    if (nowlength < num)
      $("#" + name).text(nowlength);
    else
      $("#" + name).text(num);
  } else
    $("#" + id).val(content.substring(0, maxl - 1)); 

  if (nowlength == 0)
    $("#" + name).text(0); 

  if (nowlength > num)
    $("#" + id).val(content.substring(0, num));
} 

var isSubmit = false;
$('#subMessage').click(function () { 

  if (isSubmit) {
    return;
  }
  isSubmit = true;
  if ($("#txtMessage").val() == "没有填写留言内容" || $.trim($("#txtMessage").val()) == "") {
    alert("请输入留言内容!");
    isSubmit = false;
    return;
  }
  $.ajax({
    type: "POST",
    url: app_param.path_context+"/user/member/msgboard/save",
    data: { "context": ($("#txtMessage").val()) },
    error: function () {
      isSubmit = false;
    },
    success: function (data) {
      if (data) {
        addRow(data);
        isSubmit=false;
       $('#zanwu').hide();
        document.getElementById("txtMessage").style.color = "#8C8C8C";
    $("#txtMessage").val("没有填写留言内容");
      }
    }
  });
  function addRow(messageboard) {
    var table = $("#tblmsg");
    var html = [];
    html.push("<tr>");
    html.push("<td class='m_time'>");
    html.push(messageboard.createDate);
    html.push("</td>");
    html.push("<td>");
    html.push(messageboard.context);
    html.push("</td>");
    html.push("<td style='border-right: 0;' class='m_order_procz'>");
    html.push("<a class='xxx' href='messagereply/"+messageboard.id+"'>查看</a>");
    html.push("</td>");
    html.push("</tr>");
    html = html.join('');
    table.append(html);
  } 

});

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • AJAX如何实现无刷新登录功能

    最近学习了如何实现无刷新登录,大体的效果如下(界面比较丑,请自行忽略....): 点击登录按钮时弹出登录窗口,输入正确的用户名密码后点击登录则登录窗口关闭,状态改为当前用户名. 第一步: 首先弹出窗口使用的是jquery-ui中的控件,第一步要学会如何使用. 打开解压后的jquery-UI下的development-bundle->demos,找到index.html,选择dialog下的model dialog,右键查看源码,观察如何使用该控件,找到一句关键代码:$("#dialog-m

  • Ajax解决多余刷新的两种方法(总结)

    控制器Servlet则提供了简单的改变: 对于Ajax系统而言,服务器响应无须是整个页面内容,可以仅是 必需的数据,控制器不能将数据请求转发到jsp页面. 此时控制器有两个选择: 1.直接生成简单的响应数据. 在这种模式下,Servlet直接通过response获取页面输出流,通过 输出流生成字符响应. package pers.zkr.chat.web; import java.io.IOException; import java.io.PrintWriter; import javax.s

  • ajax的分页查询示例(不刷新页面)

    既然是分页查询,那么就要有张数据很多的表,可以让它进行分页显示,用普通的方法进行分页查询必然是要刷新页面的,这里要实现不刷新页面进行分页显示数据,就要用到ajax方式.进行编写代码 (1)先写个显示数据的页面,分页查询需要那几个部分呢? 1.首先是查询的文本框输入,还有查询按钮,那么就开始写代码吧 <div> <input type="text" id="key" /> //输入查询字的文本框 <input type="but

  • 纯JS实现AJAX局部刷新功能

    AJAX即"Asynchronous Javascript And XML"(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术. AJAX = 异步 JavaScript和XML(标准通用标记语言的子集). AJAX 是一种用于创建快速动态网页的技术. 下面给大家介绍JS实现AJAX局部刷新功能,具体内容如下所示: 通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新.这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新. //

  • ajax无刷新评论功能

    这是留言板的界面,当用户点击提交留言的时候,自动提交到我的留言下面 留言内容中为空,或者为灰色的"没有填写留言内容"都会弹出 请填写留言内容,当用户填写信息的会在右下角显示当前留言的字数. 下面是javascript的代码 //去掉左右尖括号 并用去掉空格后的字符串替代显示 function replaceBrackets(id) { var inputValue = $("#" + id).val(); while (inputValue.indexOf(&quo

  • jQuery实现的简单无刷新评论功能示例

    本文实例讲述了jQuery实现的简单无刷新评论功能.分享给大家供大家参考,具体如下: <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>无刷新评论 - www.jb51.net</title> <script src="jquery-1.7.2.min.js" type="text/javascript"></scr

  • 基于jquery实现ajax无刷新评论

    jquery实现ajax无刷新评论需要用的技术:(本次试验用的是"jquery-1.4.2.js"版本的jquery) $.post("一般处理程序路径",{以字典的形式传递参数},function(data,status){``````}); jquery中的基本选择器操作: 首先创建数据库"T_article": 主键设置自增: 然后创建一个强类型的DataSet. 接着创建一个"无刷新评论.aspx"页面: 页面代码如下

  • PHP中ajax无刷新上传图片与图片下载功能

    php ajax无刷新上传图片与图片下载功能的实现代码如下所示: <meta charset="utf-8" > <form id= "uploadForm"> <p >指定文件名: <input type="text" name="filename" value= ""/></p > <p> 上传文件: <input type=

  • PHP+Ajax实现的无刷新分页功能详解【附demo源码下载】

    本文实例讲述了PHP+Ajax实现的无刷新分页功能.分享给大家供大家参考,具体如下: 注:本文中使用到的一些类库在前面文章都能找到源代码,我会在文中指明链接所在,为了缩短文章篇幅,由此带来的阅读不便,敬请谅解. 本文讲解 Ajax 实现无刷新分页.实现原理.代码展示.代码下载. 这里需要说明一些知识: 1.Ajax 无刷新页面的好处:提供良好的客户体验,通过 Ajax 在后台从数据库中取得数据并展示,取缔了等待加载页面而出现的空白状态: 2.那么,Ajax 无刷新页面是运行在动态页面(.php)

  • Laravel框架基于ajax和layer.js实现无刷新删除功能示例

    本文实例讲述了Laravel框架基于ajax和layer.js实现无刷新删除功能.分享给大家供大家参考,具体如下: 1.首先要引入layer.js <script type="text/javascript" src="{{ asset('/public/bootstrap/js/jquery-3.2.1.min.js') }}"></script> <script type="text/javascript" sr

  • ThinkPHP5.1+Ajax实现的无刷新分页功能示例

    本文实例讲述了ThinkPHP5.1+Ajax实现的无刷新分页功能.分享给大家供大家参考,具体如下: 无刷新分页可以减轻服务器负担,利用Ajax技术,请求部分信息,提高网站访问速度,是网站建设的必备技术. 需要在后台展示自定义属性列表(lst.html),其中的列表部分摘出来,放到(paginate1.html)中: <div class="row"> <div class="col-sm-12"> <div class="i

  • tp5框架基于Ajax实现列表无刷新排序功能示例

    本文实例讲述了tp5框架基于Ajax实现列表无刷新排序功能.分享给大家供大家参考,具体如下: 在后台管理的时候我们有时需要对数据进行排序,以控制数据在模板显示的顺序,排序的原理就是修改数据库,然后更新视图.我们可以单独写一个方法来实现排序的功能,成功后刷新页面,也可以利用Ajax技术,实现数据的局部请求,也就是无刷新排序的功能. 现在想要达到的效果是在排序的input框中输入数值,点击排序实现无刷新排序的功能. 首先是表格(cate.html)这一块我们要单独摘出来,放入到一个单独页面当中,方便

  • jQuery实现ajax无刷新分页页码控件

    这段时间在做公司项目的时候需要用到ajax进行分页(点击页码也是无刷新的显示上一页或下一页的内容,不是一般的选择跳转),但是在网上找了一下,大部分分页插件都是直接刷新跳转的,感觉和我的需求差距比较大,就自己动手写了一个可以实现自己需要的功能的js来实现这个控件,实现的效果如下: 因为业务需要,我需要在一个页面创建多个这样的页码控件(有些是在ajax中生成的),显然为每一个控件写一个专属的js是不现实的,所以,我将公共部分提取出来,然后通过传入的选择器不同,对不同的控件进行相应方法的调用. 下面是

随机推荐