javascript - Ajax 调用未通过 Url.Content 将“&”从视图传递给控制器
问题描述
Ajax 调用未传递“&” 通过 Url.Content 从视图到控制器
例如,如果 testIdVal 值为 "Interface Class & Function" ,则从下面的代码中。只有“接口类”被传递给控制器,“&函数”被忽略。
$("#testdiv").data("kendoWindow").refresh({
url: "@Url.Content("~/Customer/Test?Id=")" + testIdVal + "&Flag=T"
}).center().open();
解决方案
&
在 URL 的查询字符串中用作分隔符。如果要使用值&
本身,则需要对其进行编码。
// JavaScript:
encodeURIComponent("&");
// Output: %26
所以你需要设置testIdVal
为“接口类%26函数”。
$("#testdiv").data("kendoWindow").refresh({
url: "@Url.Content("~/Customer/Test?Id=")" + encodeURIComponent(testIdVal) + "&Flag=T"
}).center().open();
查询字符串采用?var1=val1&var2=val2&var3=var3 ...
. 如果不对 & 符号进行编码,任何解释 URL 的东西都会认为您正在尝试声明一个名为“Function”的新变量。
推荐阅读
- c# - 如何在没有第三方工具的情况下加密 localdb mdf 文件?
- python - 如何解析多个xml文件并将属性传递给csv?
- redirect - 显示从旧域重定向到新域的弹出窗口
- sql-server - SQL Server 插入语句部分插入数据。并非所有给定数据都被插入
- javascript - Why is this decoding/encoding process giving a different buffer array?
- websocket - 你能提供关于websocket的信息吗
- java - Caused by: org.h2.jdbc.JdbcSQLDataException: Hexadecimal string contains non-hex character
- c# - How to output all class objects in console?
- php - 正则表达式仅匹配全套两部分模式(有点非贪婪)
- python - Python Dataframe 中的多个 If 语句