📄 bulletin.js
字号:
//去除字符串的首尾的空格
function trim(str)
{
return str.replace(/(^\s*)|(\s*$)/g, "");
}
/*定义全局变量*/
var user_name = "";
var msg_id = "";
var update = false;
/*定义全局变量结束*/
/*****************************************************
* 函数名:DateCheck()
* 作 用:检查字符中是否在指定的大小范围内和是否含有非法字符
* 参 数:date: 要检查的字符;
* minum: 字符最小的长度
* maxnum: 字符最大的长度
* 返回值:True: 数据不在指定范围内或含有非法字符
* False: 数据在指定范围内且不含有非法字符
******************************************************
*/
function DateCheck(date,minnum,maxnum)
{
if (date.length < minnum || date.length > maxnum ){
window.alert("输入数据的长度不能少于 " + minnum + " 位并且不能大于 " + maxnum + " 位!");
return true;
}
a = date.indexOf("'");
b = date.indexOf("|");
c = date.indexOf("\"");
if (a != -1||b != -1 ||c != -1){
window.alert("您的输入含有特殊字符,请重新输入!");
return true;
}
return false;
}
//限定文本框的最大输入长度
function RestrictLen(obj,info)
{
var Restlen = 0;
var curlen = obj.value.length;
var nMaxLen = obj.getAttribute? parseInt(obj.getAttribute("maxlength")):"";
if(obj.getAttribute && obj.value.length>nMaxLen){
obj.value = obj.value.substring(0,nMaxLen)
}else{
Restlen=nMaxLen - curlen;
var rest=document.getElementById(info);
rest.innerHTML=Restlen;
}
return Restlen;
}
//判断是提交第一次回复还是修改回复
function choose(message_id,uname,linkObj)
{
var linkValue = linkObj.innerHTML;
if (linkValue == '[回复]')
{
answerComment(message_id,uname);
}
else
{
updateComment(message_id);
}
}
//回复提问,利用全局变量保存留言ID和用户名称
function answerComment(message_id,uname)
{
var comment = document.getElementById("answer_font");
comment.innerHTML = "回复"+uname+":";
user_name = uname;
msg_id = message_id;
comment.focus();
document.getElementById('sub_button').disabled = false;
update = false;
}
//修改已经发表的回复内容
function updateComment(message_id)
{
var comment = document.getElementById("comment");
var answer = document.getElementById('a_'+message_id).innerHTML.replace(/<[^>]+>/g,"");
var answer = answer.replace("答:","");
answer = answer.replace(" ","");
var index = answer.lastIndexOf('[');
answer = answer.substring(0,index);
answer = trim(answer);
comment.value = answer;
msg_id = message_id;
comment.focus();
document.getElementById('sub_button').disabled = false;
update = true;
}
//提交店铺的回复或者修改后的回复
function submitAnswer(url)
{
var comment = document.getElementById("comment");
var answer_font = document.getElementById("answer_font");
var CommentDefault = comment.defaultValue;
var answer = comment.value;
if((answer == CommentDefault) || (answer == "") || (answer == "回复"+user_name+":"))
{
alert("请填写您的回复!");
}
else
{
if (!update)
{
var start_point = answer.indexOf(":");
if (start_point != null)
{
answer = answer.substring((start_point+1),answer.length);
}
}
if(DateCheck(answer,2,200))
{
comment.focus();
}
else
{
var ajaxobj = new AJAXRequest;
ajaxobj.url = url;
ajaxobj.content="act=answer"+"&answer="+answer+"&message_id="+msg_id;
ajaxobj.callback=function(xmlObj)
{
xmlData = xmlObj.responseXML;
showAnswer(xmlData);
}
ajaxobj.send();
}
}
document.getElementById('sub_button').disabled = true;
comment.value = "";
answer_font.innerHTML = "";
}
//在当前页面无刷新显示店铺回复
function showAnswer(xmlData)
{
//获得服务器返回的参数
var answer;
var answer_time;
var answer_text;
var answer_td;
var answer_span;
var answer_time_span;
var message_id = xmlData.getElementsByTagName("message_id")[0].firstChild.data;
if (xmlData.getElementsByTagName("answer")[0].firstChild != null)
{
answer = xmlData.getElementsByTagName("answer")[0].firstChild.data;
}
if (xmlData.getElementsByTagName("answer_time")[0].firstChild != null)
{
answer_time = xmlData.getElementsByTagName("answer_time")[0].firstChild.data;
}
//创建页面显示需要的html对象
var message_table = document.getElementById(message_id);
var link_obj = document.getElementById("answer_link");
var answer_tr = message_table.getElementsByTagName("tr").item(1);
if (answer_tr == null)
{
//创建回答对象的tr,td,span
answer_tr = document.createElement("tr");
answer_td = document.createElement("td");
answer_span = document.createElement("span");
//设置回答td的属性
answer_td.height = 22;
answer_td.colspan = 2;
answer_td.bgcolor="#F4F9F2";
answer_td.id = 'a_'+ message_id;
answer_td.setAttribute("id",'a_'+ message_id);
}
else
{
answer_td = answer_tr.getElementsByTagName("td").item(0);
answer_span = answer_td.getElementsByTagName("span").item(0);
answer_time_span = answer_td.getElementsByTagName("span").item(1);
}
if (answer_span == null)
{
var answer_span = document.createElement("span");
//设置answer_span的属性
if (answer!= undefined)
{
answer_span.className = "da";
answer_span.innerHTML = "答:";
answer_td.appendChild(answer_span);
answer_text = document.createTextNode(answer);
answer_td.appendChild(answer_text);
link_obj.innerHTML = "[修改]";
}
}
else
{
answer_text = answer_span.nextSibling;
if (answer_text == null)
{
answer_text = document.createTextNode(answer);
answer_td.appendChild(answer_text);
}
else
{
answer_text.nodeValue = answer;
}
link_obj.innerHTML = "[修改]";
}
if(answer_time != undefined && (answer_time_span != null))
{
answer_time_span.innerHTML = "["+answer_time+"]";
}
else
{
answer_time_span = document.createElement("span");
//设置回答时间span的属性
answer_time_span.className = "fontccc";
answer_time_span.innerHTML = "["+answer_time+"]";
answer_td.appendChild(answer_time_span);
}
}
//提交需要删除的留言ID
function delSubmit(message_id,url)
{
if (checkDel())
{
var ajaxobj = new AJAXRequest;
ajaxobj.url = url;
ajaxobj.content="act=del"+"&message_id="+message_id;
ajaxobj.callback=function(xmlObj)
{
xmlData = xmlObj.responseXML;
deleteComment(xmlData);
}
ajaxobj.send();
}
}
//删除前的验证
function checkDel()
{
var msg="确定删除?";
if (confirm(msg)==true)
{
return true;
}
else
{
return false;
}
}
function deleteComment(xmlData)
{
//页面中存放留言的div的对象
var message_id = xmlData.getElementsByTagName("message_id")[0].firstChild.data;
var message_table = document.getElementById(message_id);
var parent = message_table.parentNode;
parent.removeChild(message_table);
}
//提交置顶的申请
function submitTop(message_id,shopid,url,object)
{
var ajaxobj = new AJAXRequest;
var link_text = object.innerHTML;
ajaxobj.url = url;
if (link_text == "[取消置顶]")
{
ajaxobj.content="act=cancelTop"+"&message_id="+message_id;
ajaxobj.callback=function(xmlObj)
{
xmlData = xmlObj.responseXML;
cancelTop(xmlData,object);
}
}
else
{
ajaxobj.content="act=top"+"&message_id="+message_id+"&shopid="+shopid;
ajaxobj.callback=function(xmlObj)
{
xmlData = xmlObj.responseXML;
if (!xmlData.hasChildNodes)
{
window.alert("留言置顶不可超过3条!");
}
else
{
showTop(xmlData,object);
}
}
}
ajaxobj.send();
}
//留言置顶
function showTop(xmlData,object)
{
//页面中存放留言的div的对象
var message_id = xmlData.getElementsByTagName("message_id")[0].firstChild.data;
var message_table = document.getElementById(message_id);
var comment_div = message_table.parentNode;
var a_top = document.getElementById("top");
object.innerHTML = "[取消置顶]";
var table = comment_div.removeChild(message_table);
var firstChild = comment_div.firstChild;
comment_div.insertBefore(table,firstChild);
}
//取消留言置顶
function cancelTop(xmlData,object)
{
//页面中存放留言的div的对象
var message_id = xmlData.getElementsByTagName("message_id")[0].firstChild.data;
var message_table = document.getElementById(message_id);
var comment_div = message_table.parentNode;
object.innerHTML = "[置顶]";
var table = comment_div.removeChild(message_table);
comment_div.appendChild(table);
}
//显示未回复留言
function showCurrent()
{
var current = document.getElementById('current');
var history = document.getElementById('history');
current.style.display = 'block';
history.style.display = 'none';
}
//显示已回复留言
function showHistory()
{
var current = document.getElementById('current');
var history = document.getElementById('history');
current.style.display = 'none';
history.style.display = 'block';
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -