Asp.net MVC Jquery提交后乱码问题
最近在处理MVC时,遇到要将特殊字符,或者XML格式的数据传递到后台,但是后台解析发现无法识别,处理有误。
可以通过以下方式处理。
1.Javascript 端处理主要对要传递的数据通过escape函数进行处理即可 escape(string)
但是要注意
escape() 函数可对字符串进行编码,这样就可以在所有的计算机上读取该字符串。语法escape( string )参数描述 string 必需。要被转义或编码的字符串。返回值已编码的 string 的副本。其中某些字符被替换成了十六进制的转义序列。说明该方法不会对 ASCII 字母和数字进行编码,也不会对下面这些 ASCII 标点符号进行编码: - _ . ! ~ * ' ( ) 。其他所有的字符都会被转义序列替换。 提示和注释提示:可以使用 unescape() 对 escape() 编码的字符串进行解码。注释:ECMAScript v3 反对使用该方法,应用使用 decodeURI() 和 decodeURIComponent() 替代它。 |
$.post("../Home/Test",{ ModelName: ModelName, ID: ID, Content: escape($("#Test").val()) }, function (data){///后台返回数据} }
在控制器中主要是通过Server.UrlDecode进行解码即可。
public ActionResult Test( string ModelName, string ID, string Content) { string Content=Server.UrlDecode(Content); return null ; } |
分类:
Asp.Net MVC
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构