我是用DEDECMS里的AJAX改的.
把charset=utf-8,改成GB2312就好的。但是现在需要utf-8。大哥们,复制到一下代码,帮我看看。谢谢 1、show.php <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-type" content="text/html; charset=utf-8" />
<script language="javascript" src="ssdedeajax2.js"> </script>
<script language="javascript">
<!--
function $Obj(objname){
return document.getElementById(objname);
}
function mediaVote(){
var taget_obj = $Obj('showVote');
var errMsg = "err";
var myajax = new DedeAjax(taget_obj,true,true,"",errMsg,"...");
myajax.SendGet("mediavote.php");
}
-->
</script>
</head>
<a href="javascript:mediaVote();"> Give thumbs up </a>
<span id="showVote"> </span>
</html>
2、mediavote.php
<? header("Pragma:no-cache\r\n");
header("Cache-Control:no-cache\r\n");
header("Expires:0\r\n");
header("Content-Type: text/html; charset=utf-8");
echo "1";
?> 3、ssdedeajax2.js
<!--
//xmlhttp和xmldom对象
var DedeXHTTP = null;
var DedeXDOM = null;
var DedeContainer = null;
var DedeShowError = false;
var DedeShowWait = false;
var DedeErrCon = "";
var DedeErrDisplay = "下载数据失败";
var DedeWaitDisplay = "正在下载数据..."; //获取指定ID的元素
function $(eid){
return document.getElementById(eid);
} //gcontainer 是保存下载完成的内容的容器
//mShowError 是否提示错误信息
//DedeShowWait 是否提示等待信息
//mErrCon 服务器返回什么字符串视为错误
//mErrDisplay 发生错误时显示的信息
//mWaitDisplay 等待时提示信息
//默认调用 DedeAjax('divid',false,false,'','','') function DedeAjax(gcontainer,mShowError,mShowWait,mErrCon,mErrDisplay,mWaitDisplay){ DedeContainer = gcontainer;
DedeShowError = mShowError;
DedeShowWait = mShowWait;
if(mErrCon!="") DedeErrCon = mErrCon;
if(mErrDisplay!="") DedeErrDisplay = mErrDisplay;
if(mWaitDisplay!="") DedeWaitDisplay = mWaitDisplay;
//post或get发送数据的键值对
this.keys = Array();
this.values = Array();
this.keyCount = -1; //http请求头
this.rkeys = Array();
this.rvalues = Array();
this.rkeyCount = -1; //请求头类型
this.rtype = 'text'; //初始化xmlhttp
if(window.XMLHttpRequest){//IE7, Mozilla ,Firefox 等浏览器内置该对象
DedeXHTTP = new XMLHttpRequest();
}else if(window.ActiveXObject){//IE6、IE5
try { DedeXHTTP = new ActiveXObject("Msxml2.XMLHTTP");} catch (e) { }
if (DedeXHTTP == null) try { DedeXHTTP = new ActiveXObject("Microsoft.XMLHTTP");} catch (e) { }
} DedeXHTTP.onreadystatechange = function(){
if(DedeXHTTP.readyState == 4){
if(DedeXHTTP.status == 200){
if(DedeXHTTP.responseText!=DedeErrCon && DedeXHTTP.responseText!=''){
DedeContainer.innerHTML = DedeXHTTP.responseText;
}else{
if(DedeShowError) DedeContainer.innerHTML = DedeErrDisplay;
}
DedeXHTTP = null;
}else{ if(DedeShowError) DedeContainer.innerHTML = DedeErrDisplay; }
}else{ if(DedeShowWait) DedeContainer.innerHTML = DedeWaitDisplay; }
}; //增加一个POST或GET键值对
this.AddKey = function(skey,svalue){
this.keyCount++;
this.keys[this.keyCount] = skey;
this.values[this.keyCount] = escape(svalue);
}; //增加一个Http请求头键值对
this.AddHead = function(skey,svalue){
this.rkeyCount++;
this.rkeys[this.rkeyCount] = skey;
this.rvalues[this.rkeyCount] = svalue;
}; //清除当前对象的哈希表参数
this.ClearSet = function(){
this.keyCount = -1;
this.keys = Array();
this.values = Array();
this.rkeyCount = -1;
this.rkeys = Array();
this.rvalues = Array();
}; //发送http请求头
this.SendHead = function(){
if(this.rkeyCount!=-1){ //发送用户自行设定的请求头
for(;i <=this.rkeyCount;i++){
DedeXHTTP.setRequestHeader(this.rkeys[i],this.rvalues[i]);
}
}
if(this.rtype=='binary'){
DedeXHTTP.setRequestHeader("Content-Type","multipart/form-data");
}else{
DedeXHTTP.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
}
}; //用Post方式发送数据
this.SendPost = function(purl){
var pdata = "";
var i=0;
this.state = 0;
DedeXHTTP.open("POST", purl, true);
this.SendHead();
if(this.keyCount!=-1){ //post数据
for(;i <=this.keyCount;i++){
if(pdata=="") pdata = this.keys[i]+'='+this.values[i];
else pdata += "&"+this.keys[i]+'='+this.values[i];
}
}
DedeXHTTP.send(pdata);
}; //用GET方式发送数据
this.SendGet = function(purl){
var gkey = "";
var i=0;
this.state = 0;
if(this.keyCount!=-1){ //get参数
for(;i <=this.keyCount;i++){
if(gkey=="") gkey = this.keys[i]+'='+this.values[i];
else gkey += "&"+this.keys[i]+'='+this.values[i];
}
if(purl.indexOf('?')==-1) purl = purl + '?' + gkey;
else purl = purl + '&' + gkey;
}
DedeXHTTP.open("GET", purl, true);
this.SendHead();
DedeXHTTP.send(null);
}; //用GET方式发送数据,阻塞模式
this.SendGet2 = function(purl){
var gkey = "";
var i=0;
this.state = 0;
if(this.keyCount!=-1){ //get参数
for(;i <=this.keyCount;i++){
if(gkey=="") gkey = this.keys[i]+'='+this.values[i];
else gkey += "&"+this.keys[i]+'='+this.values[i];
}
if(purl.indexOf('?')==-1) purl = purl + '?' + gkey;
else purl = purl + '&' + gkey;
}
DedeXHTTP.open("GET", purl, false);
this.SendHead();
DedeXHTTP.send(null);
}; } // End Class DedeAjax //初始化xmldom
function InitXDom(){
if(DedeXDOM!=null) return;
var obj = null;
if (typeof(DOMParser) != "undefined") { // Gecko、Mozilla、Firefox
var parser = new DOMParser();
obj = parser.parseFromString(xmlText, "text/xml");
} else { // IE
try { obj = new ActiveXObject("MSXML2.DOMDocument");} catch (e) { }
if (obj == null) try { obj = new ActiveXObject("Microsoft.XMLDOM"); } catch (e) { }
}
DedeXDOM = obj;
}; -->
把charset=utf-8,改成GB2312就好的。但是现在需要utf-8。大哥们,复制到一下代码,帮我看看。谢谢 1、show.php <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-type" content="text/html; charset=utf-8" />
<script language="javascript" src="ssdedeajax2.js"> </script>
<script language="javascript">
<!--
function $Obj(objname){
return document.getElementById(objname);
}
function mediaVote(){
var taget_obj = $Obj('showVote');
var errMsg = "err";
var myajax = new DedeAjax(taget_obj,true,true,"",errMsg,"...");
myajax.SendGet("mediavote.php");
}
-->
</script>
</head>
<a href="javascript:mediaVote();"> Give thumbs up </a>
<span id="showVote"> </span>
</html>
2、mediavote.php
<? header("Pragma:no-cache\r\n");
header("Cache-Control:no-cache\r\n");
header("Expires:0\r\n");
header("Content-Type: text/html; charset=utf-8");
echo "1";
?> 3、ssdedeajax2.js
<!--
//xmlhttp和xmldom对象
var DedeXHTTP = null;
var DedeXDOM = null;
var DedeContainer = null;
var DedeShowError = false;
var DedeShowWait = false;
var DedeErrCon = "";
var DedeErrDisplay = "下载数据失败";
var DedeWaitDisplay = "正在下载数据..."; //获取指定ID的元素
function $(eid){
return document.getElementById(eid);
} //gcontainer 是保存下载完成的内容的容器
//mShowError 是否提示错误信息
//DedeShowWait 是否提示等待信息
//mErrCon 服务器返回什么字符串视为错误
//mErrDisplay 发生错误时显示的信息
//mWaitDisplay 等待时提示信息
//默认调用 DedeAjax('divid',false,false,'','','') function DedeAjax(gcontainer,mShowError,mShowWait,mErrCon,mErrDisplay,mWaitDisplay){ DedeContainer = gcontainer;
DedeShowError = mShowError;
DedeShowWait = mShowWait;
if(mErrCon!="") DedeErrCon = mErrCon;
if(mErrDisplay!="") DedeErrDisplay = mErrDisplay;
if(mWaitDisplay!="") DedeWaitDisplay = mWaitDisplay;
//post或get发送数据的键值对
this.keys = Array();
this.values = Array();
this.keyCount = -1; //http请求头
this.rkeys = Array();
this.rvalues = Array();
this.rkeyCount = -1; //请求头类型
this.rtype = 'text'; //初始化xmlhttp
if(window.XMLHttpRequest){//IE7, Mozilla ,Firefox 等浏览器内置该对象
DedeXHTTP = new XMLHttpRequest();
}else if(window.ActiveXObject){//IE6、IE5
try { DedeXHTTP = new ActiveXObject("Msxml2.XMLHTTP");} catch (e) { }
if (DedeXHTTP == null) try { DedeXHTTP = new ActiveXObject("Microsoft.XMLHTTP");} catch (e) { }
} DedeXHTTP.onreadystatechange = function(){
if(DedeXHTTP.readyState == 4){
if(DedeXHTTP.status == 200){
if(DedeXHTTP.responseText!=DedeErrCon && DedeXHTTP.responseText!=''){
DedeContainer.innerHTML = DedeXHTTP.responseText;
}else{
if(DedeShowError) DedeContainer.innerHTML = DedeErrDisplay;
}
DedeXHTTP = null;
}else{ if(DedeShowError) DedeContainer.innerHTML = DedeErrDisplay; }
}else{ if(DedeShowWait) DedeContainer.innerHTML = DedeWaitDisplay; }
}; //增加一个POST或GET键值对
this.AddKey = function(skey,svalue){
this.keyCount++;
this.keys[this.keyCount] = skey;
this.values[this.keyCount] = escape(svalue);
}; //增加一个Http请求头键值对
this.AddHead = function(skey,svalue){
this.rkeyCount++;
this.rkeys[this.rkeyCount] = skey;
this.rvalues[this.rkeyCount] = svalue;
}; //清除当前对象的哈希表参数
this.ClearSet = function(){
this.keyCount = -1;
this.keys = Array();
this.values = Array();
this.rkeyCount = -1;
this.rkeys = Array();
this.rvalues = Array();
}; //发送http请求头
this.SendHead = function(){
if(this.rkeyCount!=-1){ //发送用户自行设定的请求头
for(;i <=this.rkeyCount;i++){
DedeXHTTP.setRequestHeader(this.rkeys[i],this.rvalues[i]);
}
}
if(this.rtype=='binary'){
DedeXHTTP.setRequestHeader("Content-Type","multipart/form-data");
}else{
DedeXHTTP.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
}
}; //用Post方式发送数据
this.SendPost = function(purl){
var pdata = "";
var i=0;
this.state = 0;
DedeXHTTP.open("POST", purl, true);
this.SendHead();
if(this.keyCount!=-1){ //post数据
for(;i <=this.keyCount;i++){
if(pdata=="") pdata = this.keys[i]+'='+this.values[i];
else pdata += "&"+this.keys[i]+'='+this.values[i];
}
}
DedeXHTTP.send(pdata);
}; //用GET方式发送数据
this.SendGet = function(purl){
var gkey = "";
var i=0;
this.state = 0;
if(this.keyCount!=-1){ //get参数
for(;i <=this.keyCount;i++){
if(gkey=="") gkey = this.keys[i]+'='+this.values[i];
else gkey += "&"+this.keys[i]+'='+this.values[i];
}
if(purl.indexOf('?')==-1) purl = purl + '?' + gkey;
else purl = purl + '&' + gkey;
}
DedeXHTTP.open("GET", purl, true);
this.SendHead();
DedeXHTTP.send(null);
}; //用GET方式发送数据,阻塞模式
this.SendGet2 = function(purl){
var gkey = "";
var i=0;
this.state = 0;
if(this.keyCount!=-1){ //get参数
for(;i <=this.keyCount;i++){
if(gkey=="") gkey = this.keys[i]+'='+this.values[i];
else gkey += "&"+this.keys[i]+'='+this.values[i];
}
if(purl.indexOf('?')==-1) purl = purl + '?' + gkey;
else purl = purl + '&' + gkey;
}
DedeXHTTP.open("GET", purl, false);
this.SendHead();
DedeXHTTP.send(null);
}; } // End Class DedeAjax //初始化xmldom
function InitXDom(){
if(DedeXDOM!=null) return;
var obj = null;
if (typeof(DOMParser) != "undefined") { // Gecko、Mozilla、Firefox
var parser = new DOMParser();
obj = parser.parseFromString(xmlText, "text/xml");
} else { // IE
try { obj = new ActiveXObject("MSXML2.DOMDocument");} catch (e) { }
if (obj == null) try { obj = new ActiveXObject("Microsoft.XMLDOM"); } catch (e) { }
}
DedeXDOM = obj;
}; -->
解决方案 »
- 开启php_zip.dll方法
- eclipse中用xdebug调试功能不能跟踪参数值
- session name 和 session id有何区别
- 有谁用过oFCKeditor??
- 我把wordpress放到一个免费的空间里面出现个问题
- 查询sqlserver的出现的问题:不能用 DB-Library(如 ISQL)或 ODBC 3.7 或更早版本将 ntext 数据或仅使用 Unicode 排序规则的 Unicode 数
- 请问如何php如何返回变量+组装html给ajax
- 关于GD库保存生成的图片
- PHP has encountered an Access Violation at 010173CD
- PHP 的PDO预处理时 float型数据怎么传入mysql
- 请问google搜索框效果如何实现呢?
- PHP的SOCKET连接接收不到数据
不知道是不是这个问题