在javascript中编码查询字符串并在asp.net-mvc服务器端正确解码的正确方法是什么?
What is the correct way to encode querystring in javascript and decode properly on asp.net-mvc serverside?
我有一个asp.net-mvc网站,我有一个问题,我有一个"&"在我的查询字符串,我用javascript构建,然后使用ajax到我的服务器。像这样:
www.mysite.com/MyController/Load?Tag=M&Ms
当我使用ajax将其传递给服务器时,它显示为
Tag="M"
所以,在我的javascript代码中,我改变了我的代码:
"Load?Tag=" + tag;
:
"Load?Tag=" + encodeURIComponent(tag);
,这解决了我的问题。我的服务器代码看起来像这样
public ActionResult Load(ProjectParams projectParams)
{
//go do stuff
}
其中ProjectParams看起来像这样:
public class ProjectParams
{
public string Tag {get;set;}
}
所以一切都很好,直到我意识到在javascript方面做这个改变,有一个连锁反应。我刚刚遇到了一个问题,如果我在标签名称中有空格,它在服务器上显示为:
My%20Tag%20Name
代替:
My Tag Name
在javascript端编码url查询字符串的正确方法是什么,并确保它正确显示在服务器端控制器动作
你可以用
轻松解码Server.UrlDecode()
你可以在setter中设置
相关文章:
- 这是什么 ==- javascript 运算符
- 我的单元测试选项是什么
- 打破承诺链的好方法是什么
- 在AngularJS应用程序中使用封装指令和路由的推荐方式是什么
- Javascript中的空白是什么
- 是什么让一个“;Uncaught RangeError:超过了最大调用堆栈大小“;错误(Chrome,在其他浏览器中显示
- 在JavaScript中拆分日期字符串的更好方法是什么
- 将jQuery.ech()方法转换为本地JavaScript抽象的最佳方法是什么
- 处理浮点错误的最佳方法是什么
- javascript导入的最佳实践是什么
- 基于窗口宽度jquery的函数的替代方法是什么
- 在ng重复循环中显示条件内容的最佳方式是什么
- 我的客户端选项是什么
- 这是什么“;要求“;事情
- 未捕获的类型错误:topFrame.window.changeSelectedBarStyle不是函数,原因是什么
- 实现比较方法的最佳实践是什么;s的比较类型是在运行时选择的
- @@(“at at”)在ES6 JavaScript中是什么意思
- 对区间[1,10^12]中的整数进行编码/解码的快速有效方法是什么
- 对 URI 组件非 utf-8 字符进行编码并相应地解码它们的正确方法是什么
- 在javascript中编码查询字符串并在asp.net-mvc服务器端正确解码的正确方法是什么?