我在 JavaScript 中有以下函数,我PageMethod
在 ASP.Net 中使用它来调用它。
问题是当我传递一个类似xy\23
或2%
参数的字符串时searchStringVal
,我得到一个 JavaScript 错误。无论如何我可以处理这种问题吗?这个参数最终被传递给我的 ASP.Net 页面中的静态服务器端方法,这进一步加剧了这个问题。所以我正在寻找在这种情况下使用的最有效的方法。
一种解决方案可能是在 JavaScript 中编码字符串,但我需要能够在 ASP.Net C# 代码中对其进行解码,而不会丢失字符串的原始值。
function CallPageMethod(startRowIndex, searchStringVal) {
if (newVal != searchStringVal) {
//document.getElementById('divMessage').style.visibility = "hidden";
return;
}
start = new Date();
PageMethods.GetData(startRowIndex, tableView.get_pageSize(), searchStringVal, updateGrid, onError, searchStringVal);
}
最新更新:我的问题由两个不同的人回答。如何将两者都标记为答案?我最终使用了 Vinay 推荐的 Javascript 编码方法,然后使用 Uri.UnescapeDataString 方法在 C# 中取消编码。