javascript - 在查询字符串处传递 '+'

标签 javascript c# asp.net-mvc special-characters query-string

如何传递特殊字符,例如查询字符串中的“+”或“#”?

我正在调用 MVC 操作并将值“abc+def”作为查询字符串传递,但在调试时我注意到传递的值是“abc def”(“+”字符被空格替换! )

这是操作的代码

public ActionResult Index(string textSearch)
{
    //...
}

这是调用前一个操作的 JS 代码行

window.location.href = "/Books/Index?textSearch=" + txtBooksFilter.val();

我在文本输入中写入的值是“abc+def”,但传递到服务器的值是“abd def” 浏览器的 url 为:“/Books/Index?textSearch=abc+def”

如何解决这个问题?

最佳答案

您需要调用encodeURIComponent()来转义它。

关于javascript - 在查询字符串处传递 '+',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56942286/

相关文章:

c# - 更改蒙版文本框中的分隔符

c# - MVC5 中模拟 ConfirmEmailAsync 和其他 UserManager 方法的接口(interface)

Javascript, var name = 1, "typeof name"给出 "string"?

javascript - 如何在 Jquery 中切换动画

javascript - JS 模板不是由 Heroku 上的 Ruby on Rails 呈现的

c# - 将字符串 "172406"快速转换为整数 17、24、06

Javascript 选项卡显示具有相同核心变量类型的两组不同信息

c# - 从字符串生成唯一文件夹名称的问题

c# - 有什么方法可以在 asp.net mvc 5 中使用 TagHelpers 吗?

javascript - 如果 session 中的属性不为 null 或默认值,则运行/打印 javascript Razor ASP.NET MVC