init
This commit is contained in:
220
index_files/ajax.js
Normal file
220
index_files/ajax.js
Normal file
@@ -0,0 +1,220 @@
|
||||
//创建XMLHTTP对象
|
||||
|
||||
function createXMLHttpRequest()
|
||||
{
|
||||
var xmlHttp = null;
|
||||
try{
|
||||
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
|
||||
}
|
||||
catch(e)
|
||||
{
|
||||
try{
|
||||
xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
|
||||
}
|
||||
catch(e)
|
||||
{
|
||||
try{
|
||||
xmlHttp = new XMLHttpRequest();
|
||||
}catch(e){
|
||||
}
|
||||
}
|
||||
}
|
||||
return xmlHttp;
|
||||
}
|
||||
|
||||
//请求链接
|
||||
//url: 请求地址
|
||||
//fun:回调函数
|
||||
function startRequest(url, fun,xmlHttp)
|
||||
{
|
||||
xmlHttp.onreadystatechange = fun;
|
||||
xmlHttp.open("GET",url,true);
|
||||
xmlHttp.send(null);
|
||||
}
|
||||
|
||||
//获得xml子节点
|
||||
//father:父节点
|
||||
//name:子节点名称
|
||||
//如果获得则返回节点,没有则返回null
|
||||
function getXmlChild(father, name)
|
||||
{
|
||||
var es = father.getElementsByTagName(name);
|
||||
if(es.length == 0)
|
||||
return null;
|
||||
else
|
||||
return es[0];
|
||||
}
|
||||
|
||||
String.prototype.trim = function()
|
||||
{
|
||||
// 用正则表达式将前后空格
|
||||
// 用空字符串替代。
|
||||
var t = this.replace(/(^\s*)|(\s*$)/g, "");
|
||||
return t.replace(/(^ *)|( *$)/g, "");
|
||||
}
|
||||
|
||||
//获得xml节点值
|
||||
//father:父节点
|
||||
//name:子节点名称
|
||||
//defaultvalue:默认值
|
||||
//如果获得则返回节点值,没有则返回defaultvalue
|
||||
function getXmlData(father, name, defaultvalue)
|
||||
{
|
||||
var es = father.getElementsByTagName(name);
|
||||
if(es.length == 0)
|
||||
return defaultvalue;
|
||||
else if(es[0].firstChild == null)
|
||||
return defaultvalue;
|
||||
else
|
||||
{
|
||||
for(var i=0;i<es[0].childNodes.length;i++){
|
||||
var node = es[0].childNodes[i];
|
||||
if(node.nodeValue != null && node.nodeValue.trim() !="")
|
||||
{
|
||||
return node.nodeValue;
|
||||
}
|
||||
}
|
||||
return defaultvalue;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
//把"转换为"
|
||||
function escapeForValue(str)
|
||||
{
|
||||
return str.replace(/\"/g, """);
|
||||
}
|
||||
|
||||
//用来实现文章的计数
|
||||
function getClickTimes(newsid, owner,type,randomid) {
|
||||
var url = '/system/resource/code/news/click/clicktimes.jsp';
|
||||
if(!type) type="wbnews";
|
||||
if(!randomid)
|
||||
{
|
||||
randomid="n";
|
||||
}else
|
||||
{
|
||||
randomid="n"+randomid;
|
||||
}
|
||||
var xmlHttp = createXMLHttpRequest();
|
||||
var url = url+"?wbnewsid="+newsid+"&owner="+owner+"&type="+type+"&randomid="+randomid;
|
||||
xmlHttp.open("GET", url, true);
|
||||
xmlHttp.onreadystatechange = function(){onGetClickTimes(xmlHttp);};
|
||||
xmlHttp.send(null);
|
||||
}
|
||||
function _getBatchClickTimes(newsid, owner,type,randomid) {
|
||||
var url = '/system/resource/code/news/click/batchclicktimes.jsp';
|
||||
if(!type) type="wbnews";
|
||||
if(!randomid)
|
||||
{
|
||||
randomid="n";
|
||||
}else
|
||||
{
|
||||
randomid="n"+randomid;
|
||||
}
|
||||
var wbnewsids = newsid.split(",");
|
||||
|
||||
var isshow = false;
|
||||
for(var i = 0; i < wbnewsids.length; i++)
|
||||
{
|
||||
var obj = document.getElementById(randomid+wbnewsids[i]);
|
||||
if(obj != null)
|
||||
isshow = true;
|
||||
}
|
||||
if(isshow)
|
||||
{
|
||||
var xmlHttp = createXMLHttpRequest();
|
||||
var url = url+"?wbnewsid="+newsid+"&owner="+owner+"&type="+type+"&randomid="+randomid;
|
||||
xmlHttp.open("GET", url, true);
|
||||
xmlHttp.onreadystatechange = function(){_onGetBatchClickTimes(xmlHttp);};
|
||||
xmlHttp.send(null);
|
||||
}
|
||||
}
|
||||
|
||||
//用来实现文章的计数
|
||||
function _onGetBatchClickTimes(originalRequest)
|
||||
{
|
||||
if(originalRequest.readyState == 4 && originalRequest.status == 200)
|
||||
{
|
||||
var str = originalRequest.responseText;
|
||||
var json = eval("("+str+")");
|
||||
for(var i = 0; json != null && i < (json.length?json.length:1);i++)
|
||||
{
|
||||
var objid =json.length?(json[i].randomid+json[i].wbnewsid):(json.randomid+json.wbnewsid);
|
||||
var spanobj = document.getElementsByName(objid);
|
||||
if(spanobj.length > 0)
|
||||
{
|
||||
for(var j=0; j<spanobj.length;j++)
|
||||
{
|
||||
spanobj[j].innerHTML = json[i].clicktime;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
//用来实现文章的计数
|
||||
function onGetClickTimes(originalRequest)
|
||||
{
|
||||
if(originalRequest.readyState == 4 && originalRequest.status == 200)
|
||||
{
|
||||
var str = originalRequest.responseText;
|
||||
var json = eval("("+str+")");
|
||||
for(var i = 0; json != null && i < (json.length?json.length:1);i++)
|
||||
{
|
||||
var objid = json.length?(json[i].randomid+json[i].wbnewsid):(json.randomid+json.wbnewsid);
|
||||
var objs = document.getElementsByTagName("span");
|
||||
if(objs.length > 0)
|
||||
{
|
||||
for(var j=0; j<objs.length;j++)
|
||||
{
|
||||
if(objid==objs[j].id)
|
||||
objs[j].innerHTML = json.length?json[i].wbshowtimes:json.wbshowtimes;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
function addClickTimes(urlid,owner,type){
|
||||
var url = '/system/resource/code/news/click/addclicktimes.jsp';
|
||||
var xmlHttp = createXMLHttpRequest();
|
||||
var url = url+"?wburlid="+urlid+"&owner="+owner+"&type="+type;
|
||||
xmlHttp.open("GET", url, true);
|
||||
xmlHttp.onreadystatechange = function(){};
|
||||
xmlHttp.send(null);
|
||||
}
|
||||
loadXML = function(xmlString){
|
||||
var xmlDoc=null;
|
||||
//判断浏览器的类型
|
||||
//支持IE浏览器
|
||||
if(!window.DOMParser && window.ActiveXObject){ //window.DOMParser 判断是否是非ie浏览器
|
||||
var xmlDomVersions = ['MSXML.2.DOMDocument.6.0','MSXML.2.DOMDocument.3.0','Microsoft.XMLDOM'];
|
||||
for(var i=0;i<xmlDomVersions.length;i++){
|
||||
try{
|
||||
xmlDoc = new ActiveXObject(xmlDomVersions[i]);
|
||||
xmlDoc.async = false;
|
||||
xmlDoc.loadXML(xmlString); //loadXML方法载入xml字符串
|
||||
break;
|
||||
}catch(e){
|
||||
}
|
||||
}
|
||||
}
|
||||
//支持Mozilla浏览器
|
||||
else if(window.DOMParser && document.implementation && document.implementation.createDocument){
|
||||
try{
|
||||
/* DOMParser 对象解析 XML 文本并返回一个 XML Document 对象。
|
||||
* 要使用 DOMParser,使用不带参数的构造函数来实例化它,然后调用其 parseFromString() 方法
|
||||
* parseFromString(text, contentType) 参数text:要解析的 XML 标记 参数contentType文本的内容类型
|
||||
* 可能是 "text/xml" 、"application/xml" 或 "application/xhtml+xml" 中的一个。注意,不支持 "text/html"。
|
||||
*/
|
||||
domParser = new DOMParser();
|
||||
xmlDoc = domParser.parseFromString(xmlString, 'text/xml');
|
||||
}catch(e){
|
||||
}
|
||||
}
|
||||
else{
|
||||
return null;
|
||||
}
|
||||
|
||||
return xmlDoc;
|
||||
}
|
||||
Reference in New Issue
Block a user