如何正确地从一个完全自由的文本字段转义所有必需的字符

本文关键字:转义 字段 文本 字符 自由 正确地 一个 | 更新日期: 2023-09-27 18:16:47

我有一个文本区域的形式,我希望是一个完全免费的测试字段,为用户添加任何文本,包括url的等

这个文本区域的内容将被传递给一个c# webmethod作为ajax/json,然后被添加到sql数据库。

在用户添加撇号和/或其他一些重音字符之前,这工作得很好,我认为斜杠等。我知道撇号是一个问题,大多数人对其他类似问题的评论,如果我删除它的json工作。

我已经尝试过简单地替换()上的斜杠,它的工作(但我担心其他字符像',也阻止json工作)。

我能做的是一种过滤(转译)任何会打破json('或'等)的方式,也处理一个url,如果它被添加,也c#从db上恢复它在griview的绑定事件

如何正确地从一个完全自由的文本字段转义所有必需的字符

可以使用JSON2的stringify方法

的例子:

<textarea id="txtInput"></textarea>
<div id="submit">Submit</div>
<script src="/Scripts/jquery-1.7.1.js" type="text/javascript"></script>
<script src="/Scripts/json2.min.js" type="text/javascript"></script>
<script>
  $('#submit').click(function () {
    var inputData = $('#txtInput').val();
    var jsonData = {}
    jsonData.input = inputData;
    jsonData.otherStuff = 1;
    var validJson = JSON.stringify(jsonData);
    alert(validJson);
  });
</script>

试试这些

HttpServerUtility.UrlEncode()
Uri.EscapeUriString()

encodeURI()和encodeuriccomponent ()