它可在其他浏览器中使用,将&
字符转换为%26
,这是预期的输出。
var CustomerID = "1234A&B";
let qString = "CustomerID=" + encodeURIComponent(CustomerID);
在IE11,Edge和Chrome中的输出是CustomerID=1234A%26B
,这是我所期望的,但是在Firefox中,好像该方法没有使用:CustomerID=1234A&B
。这对我来说是个问题,因为现在服务器正在获取具有值B
的参数null
,因为它会将与号转换为查询字符串定界符并将B
解释为第二个参数。
我的实现不正确吗?我正在使用Firefox 64.0.2(2019年1月9日)。
答案 0 :(得分:0)
我是笨蛋。在我使用属性路由并将值作为路由参数传递之前(这是后端上的MVC)。然后我将其更改为使用查询字符串,因为参数具有特殊字符,并且属性路由需要更深的潜在风险修改才能允许特殊字符作为参数。
无论如何,查询字符串中的参数名称标签错误。当我只在属性路由中使用参数值时,这不是问题,但是对于查询字符串,您需要确切指定参数名称。