asp-classic – 经典的ASP gremlims,每当使用HTML特殊字符时都会
我正在开发一个较旧的经典ASP网站,并且有一个表单允许用户输入一些文本(进入多行文本框),如果他们添加了像?(注册商标)这样的html字符,它会正确插入.但当他们使用相同的表格编辑数据时,更新将在注册商标前添加随机的“?”(抑扬音).内容类型为utf-8.
有任何想法吗? 谢谢你随时给这个.这让我疯了. 解决方法
最基本的问题是Response.Codepage对表单帖子的影响.
当您将表单发送到客户端指定内容编码为UTF-8时,浏览器将假定表单帖子的内容应以UTF-8编码发送. 现在,接收帖子的操作页面(有点反直觉地)使用Response.Codepage的值来通知它如何编码帖子中的字符.这并不明显,因为我们倾向于认为发件人的工作是定义其发送的编码.此外,认为在我们的响应中对我们想要发送的内容的编码进行处理的属性与接收初始请求的方式有关,这并不是一个自然的飞跃.在这种情况下确实如此. 发生的事情是您的表单是发布该字符的UTF-8编码版本,但接收的页面没有将其Response.Codepage设置为65001(UTF-8代码页).它可能设置为系统OEM代码页,如1252.因此,字符的UTF-8编码被解释为两个单独的字符. 我对ASP中良好角色处理的建议是: – >将所有页面保存为UTF-8 这里重要的是,在您阅读ASP页面中的表单值之前,您需要确保将Response.Codepage设置为与发件人编码匹配的代码页,这不会自动发生. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net-mvc – MVC:覆盖默认的ValidationMessage
- asp.net mvc框架,自动发送电子邮件
- asp.net-mvc – 谷歌日历无法读取ICalendar.
- asp.net-mvc – MVC在提交按钮单击后登录重定向后从表单发布
- asp.net – 命名空间’System.Web’中不存在类型或命名空间
- asp.net – Ajax Control Toolkit正在加载太多脚本资源
- asp.net-mvc – MVC 5中的Web API属性路由异常:该对象尚未
- asp.net-mvc – ASP.NET MVC:使用没有IClientValidatable的
- asp.net-core – “如果从deploy文件夹运行,则需要”库’ho
- asp.net – 如果我只是在做一个查找表,我应该使用自动生成的