对象不支持此属性或方法: 'Response.CharSet'

来源:互联网 发布:木头马尾原创服装淘宝 编辑:程序博客网 时间:2024/04/30 22:04
【转载】对象不支持此属性或方法: 'Response.CharSet'
给客户开发的一个web系统,本来计划是在IIS下运行,无奈客户那边的电脑操作系统IIS无论怎样都安装不了,总不能要求客户为了这个web系统重新安装操作系统吧?所以想到了NetBox。  
开发的时候都是在IIS下进行调试,然后用NetBox运行,基本上一切正常,客户使用了一段时间后,提出增加一个新的功能,于是用ajax增加了一个新功能,NetBox下运行出错,  
错误提示:  
运行时错误 '800a01b6'   
对象不支持此属性或方法: 'Response.CharSet'   
---------------------------------------------------------------------  
(百度一下,还有很多人遇到同样的错误)  
Microsoft VBScript runtime error '800a01b6'    
Object doesn't support this property or method: 'Response.Charset'    
检查出错代码:  
Response.CharSet    =    "GB2312"   

这行代码主要是为了解决ajax用get获得数据时,中文乱码的问题。  

删除这行代码后netbox正常运行,但是ajax返回的中文数据成了乱码。 
说明 NetBox不支持 Response.CharSet 。 
打开netbox的使用手册,依次展开: 
对象参考 → Response 对象 → Response 方法 
AddHeader 方法  
AddHeader 方法用指定的值添加 HTML 标题。该方法常常向响应添加新的 HTTP 标题  
语法  
Response.AddHeader name, value  
参数  
name   
     新的标题变量的名称  
value   
     存储在新的标题变量中的初始值   
注释  
为避免命名不明确,name 中不能包含任何下划线字符 (_)。ServerVariables 集合将标题中的下划线字符解释为反斜杠。例如,下面的脚本使服务器查找一个名为 MY-HEADER 的标题名。  
<% Request.ServerVariables("HTTP_MY_HEADER") %>  
示例  
下面这个示例使用 AddHeader 方法要求客户端使用 BASIC 验证。  
<% Response.Addheader "WWW-Authenticate", "BASIC" %>  
注意 前面的脚本仅通知客户端浏览器使用哪个验证。若您在 Web 应用程序中使用该脚本,则一定要启用 Web 服务器的 BASIC 验证。  
于是将  
Response.CharSet    =    "GB2312"    
替换成: 
Response.Addheader "Content-Type","text/html; charset=gb2312" 

NetBox环境下ajax用get获取数据,中文乱码的问题解决!

---------------------------------------------------------------------------------------------------

Microsoft VBScript 运行时错误 '800a01b6' 对象不支持此属性或方法: 'Session.CodePage'

Microsoft VBScript 运行时错误 '800a01b6' 对象不支持此属性或方法: 'Session.CodePage'


在标准的IIS环境下(也就是真实的WEB服务器)此代码是不会出错的。估计你用的是ASP的本地调试工具吧(比如NetBox之类的)?这就会报错的。你可以把第3行删掉或注释掉,不会影响调试工具的使用的(因为调试工具是固定使用gb2312编码的)。如果要上传到真实的服务器,再放上这条语句即可。

Microsoft VBScript 运行时错误 '800a01b6' 对象不支持此属性或方法: 'Session.CodePage'

1 0
原创粉丝点击