52,797
社区成员
发帖
与我相关
我的任务
分享
//ajax引擎对象
var xmlHttp;
//ajax请求返回的信息存放的对象
var returnMessage;
//创建ajax引擎对象
function createXmlHttp() {
if (window.XMLHttpRequest) {
xmlHttp = new XMLHttpRequest();
if (xmlHttp.overrideMimeType) {
xmlHttp.overrideMimeType("text/xml");
}
} else if (window.ActiveXObject) {
try {
xmlHttp = new ActiveXObject("MSXML2.XMLHTTP");
} catch (e) {
try {
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {
alert("不能创建XmlHttpRequest");
}
}
}
}
/**
* @param method:请求方式
* @param url:请求路径
* @param flag:请求模式 true表示异步模式
* @param params:请求参数字符串
* @param writeMessage:处理返回信息的函数
* @return 无返回结果
*/
function sendAjaxRequest(method,url,flag,params,writeMessage){
createXmlHttp();
if(method == "get"){
url = encodeURI(url);
}
xmlHttp.open(method, url, flag);
if(method == "post"){
xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
}
xmlHttp.send(params);
xmlHttp.onreadystatechange = function (){
if(xmlHttp.readyState == 4){
if(xmlHttp.status == 200){
returnMessage = xmlHttp.responseText;
}else if(xmlHttp.status == 404){
returnMessage = "请求路径错误";
}else if(xmlHttp.status == 500){
returnMessage = "服务器内部错误";
}else{
returnMessage = "异常";
}
writeMessage();
}
};
}
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>评论</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
<script type="text/javascript">
function changeCode(){
document.getElementById("yzm").src = "yanzhengma_image.jsp?rand" + Math.random();
}
</script>
<script type="text/javascript" src="js/AjaxUtil.js"></script>
<script type="text/javascript">
function addComment(){
var content = document.getElementById("content").value;
var irand = document.getElementById("irand").value;
var url = "commentManagerServlet?flag=1&content=" + content + "&irand=" + irand;
sendAjaxRequest("get",url,true,null,writeMessage);
}
function writeMessage(){
if(returnMessage == "randError"){
document.getElementById("yzmError").innerHTML = "<img src='images/wrong.jpg'/><b style='color:red'>验证码错误</b>";
}else if(returnMessage == "error"){
alert("添加评论失败");
}else{
document.getElementById("but").disabled = true;
}
}
</script>
</head>
<body>
<h1>视频正在播放中......</h1>
<h1>视频正在播放中......</h1>
<h1>视频正在播放中......</h1>
<h1>视频正在播放中......</h1>
<br>
<textarea rows="7" cols="60" id="content" name="content"></textarea>
<br>
验证码:<input style="height: 25px;width: 70px;" type="text" id="irand" name="irand"/>
<img id="yzm" src="yanzhengma_image.jsp" onclick="changeCode()"/>
<span id="yzmError"></span>
<br>
<input id="but" type="button" value="增加评论" onclick="addComment()"/>
<hr>
评论内容:<br>
</body>
</html>
package com.kouy.ajax.web.servlet;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.kouy.ajax.dao.CommentDao;
import com.kouy.ajax.po.Comment;
public class CommentManagerServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String flag = request.getParameter("flag");
if("1".equals(flag)){
addComment(request, response);
}
}
public void addComment(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setCharacterEncoding("utf-8");
String content = request.getParameter("content");
String irand = request.getParameter("irand");
String rand = (String) request.getSession().getAttribute("rand");
String message = "";
if(!rand.equalsIgnoreCase(irand)){
message = "randError";
}else{
Comment comment = new Comment();
comment.setVideoid(7670);
comment.setUserid(1987);
comment.setContent(content);
boolean flag = CommentDao.getInstance().addComment(comment);
if(flag){
message = "success";
}else{
message = "error";
}
}
response.setCharacterEncoding("utf-8");
response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println(message);
out.flush();
out.close();
}
}
if(!rand.equalsIgnoreCase(irand)){
message = "{msg:'randError'}";//////////
}else{
Comment comment = new Comment();
comment.setVideoid(7670);
comment.setUserid(1987);
comment.setContent(content);
boolean flag = CommentDao.getInstance().addComment(comment);
if(flag){
message = "{msg:'success'}";////////
}else{
message = "{msg:'error'}";//////
}
}
function writeMessage(){
var o = eval('('+returnMessage+')');////
alert(o.msg.length)
}
//你增加下面这句试试,如果没有多余的字符,输出循序应该是下面的
//114|101|116|117|114|110|77|101|115|115|97|103|101|
//如果有多余的,你看下charcode是什么,发出来看看
for(var t=0;i<t.length;i++)alert(t.charCodeAt(i))
function trim(v){return v.replace(/^\s*|\s*$/g,'');}
function trim(v){return v.replace(/^\s*|\s*$$/,'');}
function writeMessage(){
returnMessage=trim(returnMessage);///////
alert(returnMessage.length)///输出长度看看,可能存在空白符号,如果不为8,那就是存在空白了
if(returnMessage == "randError"){
document.getElementById("yzmError").innerHTML = "<img src='images/wrong.jpg'/><b style='color:red'>验证码错误</b>";
}else if(returnMessage == "error"){
alert("添加评论失败");
}else{
document.getElementById("but").disabled = true;
}
}
function writeMessage(){
alert(returnMessage.length)///输出长度看看,可能存在空白符号,如果不为8,那就是存在空白了
if(returnMessage == "randError"){
document.getElementById("yzmError").innerHTML = "<img src='images/wrong.jpg'/><b style='color:red'>验证码错误</b>";
}else if(returnMessage == "error"){
alert("添加评论失败");
}else{
document.getElementById("but").disabled = true;
}
}
var s='err\r\n';
alert(s.length)//5
function trim(v){return v.replace(/^\s*|\s*$/g,'');}
s=trim(s)
alert(s.length)//3