将字符串从 JavaScript 编码和解码为 C# - 不起作用
Encoding and Decoding Strings From Javascript to C# - Not Working
我在使用某些字符串编码时遇到问题,可能是 IIS 问题,或者我忽略了什么。基本上,随机地,当用户提交更改时,文本与 %20 一起存储,就好像它完全忽略了我的解码一样。它永远不会发生在我本地主机、实时或任何浏览器上;它从来都不一致,甚至不知道如何测试出了什么问题。
只需粘贴基本部分:
接受用户输入的文本控件
<asp:TextBox TextMode="MultiLine" runat="server" txtActionUpdate"></asp:TextBox>
然后
Javascript"escape"并传递给ajax方法以发送到代码隐藏
var tAction = escape(document.getElementById("txtActionUpdate").value);
然后
在网络方法中,我使用以下方法进行解码:
Test = Microsoft.JScript.GlobalObject.unescape(tAction);
(以前是:test = HttpUtility.UrlDecode(tAction);)
但无论如何,上面的两个解码选项都可以完美地工作(对我来说?但是随机地,当用户处理它时,它会从字面上"跳过"解码步骤,只是以编码格式(即:this%20is%20a%20Test%20string)将其写入数据库,就好像我根本没有代码一样。
我们有多个客户(单独的URL),但有一个代码库。在发布过程中,我先删除然后发布,清除应用程序池,让用户清除浏览器缓存(实际上讨厌后者),但这似乎永远不会保持一致。我有一种感觉,这更多的是一些"缓存"或"服务器设置"问题,而不是代码问题......让我看起来很糟糕!;)哈哈。有人有预感吗?
我不会为此(或其他任何东西)使用escape
。我会使用 encodeURIComponent
,然后用HttpUtility.UrlDecode
解码(我认为;显然,MSDN 现在已关闭)。
我的猜测是,在客户端的某个地方,数据被编码了两次,然后导致你所看到的效果。
相关文章:
- electronic BrowserWindow的最小高度和宽度在hide()show()方法之后不起作用
- 监视函数从服务返回不起作用,但作用域函数起作用
- 幻灯片滚动javascript不起作用
- 简单的javascript在Shopify中不起作用
- Recaptcha在IE7和IE8中不起作用
- Ember Data DS.Model's set函数不起作用
- JsFiddle上的鼠标事件不起作用
- 我的AngularJS表达式没有'不起作用
- 点击按钮输入不起作用
- 面向对象的Javascript代码在IE7中不起作用
- 分部隐藏在jquery中不起作用
- 在phonegap应用程序内部重定向不起作用
- Array.length似乎不起作用;console.log则显示其他情况
- $ionicplatform内的$scope不;不起作用
- 我的javascript for循环不起作用
- Meteor-添加用户自定义字段的方法不起作用
- 为什么 .focus() 不起作用,而 .css(“color”,“red”) 在同一个选择器上起作用
- Textarea必需的attribut在javascript中不起作用
- 解码URI似乎不起作用
- 将字符串从 JavaScript 编码和解码为 C# - 不起作用