下面就为大家带来一篇 ajax无刷新评论示例。学习还是有点帮助的,给大家做个参考吧。

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

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

下面是javascript的代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
//去掉左右尖括号 并用去掉空格后的字符串替代显示
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);
  }
  
});

ajax无刷新评论示例的更多相关文章

  1. 案例(JQuery的ajax无刷新评论)

    CommentsTest.html代码: <head> <meta http-equiv="Content-Type" content="text/ht ...

  2. Ajax.BeginForm()实现ajax无刷新提交

    1. 同时安装 Microsoft jQuery Unobtrusive ajax 和 jQuery Unobtrusive Ajax,如下图 安装完成之后多了如下的js库 2. 引用该js库 lay ...

  3. 移动端图片上传解决方案localResizeIMG先压缩后ajax无刷新上传

    现在科技太发达,移动设备像素越来越高,随便一张照片2M+,但是要做移动端图片上传和pc上略有不同,移动端你不能去限制图片大小,让用户先处理图片再上传,这样不现实.所以理解的解决方案就是在上传先进行图片 ...

  4. Ajax无刷新提交

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  5. ajax 无刷新分页

    //ajax 无刷新分页1.前台要做的 滑动时 当前page+1,通过page ajax请求后台接口获取数据将数据进行拼装;2.后台要做的 做分页接口返回json数据前台判断触发请求条件: var p ...

  6. thinkphp ajax 无刷新分页效果的实现

    思路:先做出传统分页效果,然后重新复制一份Page.class.php类,对它进行修改,把js中的函数传到page类中,把上一页.下一页.首页.尾页.链接页中的url地址改成js控制的函数,模板页面中 ...

  7. DWZ框架Ajax无刷新表单提交处理流程

    DWZ框架Ajax无刷新表单提交处理流程是: 1.       ajax表单提交给服务器 2.       服务器返回一个固定格式json结构 3.       js会调函数根据这个json数据做相应 ...

  8. Thinkphp框架 -- ajax无刷新上传图片

    用Thinkphp框架做无刷新上传图片 视图层 View <!doctype html> <html lang="en"> <head> < ...

  9. Ajax无刷新提交表单和显示

    ajax无刷新表单提交:   <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "htt ...

随机推荐

  1. 转载:Android Studio调试功能使用总结

    这段时间一直在使用Intellij IDEA, 今天把调试区工具的使用方法记录于此. 先编译好要调试的程序. 1.设置断点 选定要设置断点的代码行,在行号的区域后面单击鼠标左键即可. 2.开启调试会话 ...

  2. 09_android项目的目录结构

    R.java是由IDE自动生成的,不允许修改. Android Dependences  安卓的支持库 项目创建之后一般都会把安卓支持库的V4包导入进来. 项目打包的时候assets的内容并不会被编译 ...

  3. [hdu1402]A * B Problem Plus(FFT模板题)

    解题关键:快速傅里叶变换fft练习. 关于结果多项式长度的确定,首先将短多项式扩展为长多项式,然后扩展为两倍. #include<cstdio> #include<cstring&g ...

  4. #410(div2)B. Mike and strings

    time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standa ...

  5. call apply bind 的区别

    1.call和apply都是对函数的直接调用,而bind方法返回的仍然是一个函数,因此后面还需要()来进行调用才可以 var xw={ name: "小王", gender: &q ...

  6. 11、比对软件STAR(https://github.com/alexdobin/STAR)

    转载:https://mp.weixin.qq.com/s?__biz=MzI1MjU5MjMzNA==&mid=2247484731&idx=1&sn=b15fbee5910 ...

  7. 【机器学习】关联规则挖掘(二):频繁模式树FP-growth

    Apriori算法的一个主要瓶颈在于,为了获得较长的频繁模式,需要生成大量的候选短频繁模式.FP-Growth算法是针对这个瓶颈提出来的全新的一种算法模式.目前,在数据挖掘领域,Apriori和FP- ...

  8. c++中Int装string

    java中,string类型非常强大,任何类型和string类型相加都变成了string类型.但是c++中string功能就比较少 int转string有两种方式 1:stringstream; ; ...

  9. 20169219 linux内核原理与分析第二周作业

    "linux内核分析"的第一讲主要讲了计算机的体系结构,和各寄存器之间对数据的处理过程. 通用寄存器 AX:累加器 BX:基地址寄存器 CX:计数寄存器 DX:数据寄存器 BP:堆 ...

  10. 【本人译作推荐】Windows 8应用开发:C#和XAML卷(原名:Building Windows 8 Apps with C# and XAML)

    [图书推荐] 译名:Windows 8应用开发:C#和XAML卷 原名:Building Windows 8 Apps with C# and XAML   编辑推荐 国内第一本使用XAML与C#语言 ...