是这样的,我现在使用FCKeditor文本编辑器,有时提交的数据中含有一些引号、逗号,就会破坏json结构 FCKeditor:'FCKeditor txt 数据'
所以需要在提交前做一些过滤,将有问题的东东做些处理让其不影响josn结构。看网上说http://www.json.org/json2.js 有此功能但没发现这种处理方法呢。

解决方案 »

  1.   

    如果你是要在前台把json数据传给后台,那就在提交前用js替换一些特殊字符;
    如果你是要在后台把json数据发给前台,那就在发送前在后台替换一些特殊字符。
      

  2.   

    FCKeditor:'FCKeditor txt 数据' <--此处是在js的字符串中,赋值时要替换掉js字符串的一些特殊字符,而逗号,[]等不需要转,按顺序:
    \ 转为 \\
    " 转为 \"
    ' 转为 \'
    回车换行 转为 \n 
      

  3.   

    我用的是.net1.1没有这方面的类库,而且我也试字符过滤过总会出现一些漏掉一些
      

  4.   

        数据是这样的前台我没检查直接post到后台放到数据库中,接着需要查看时,再从后台取出来放到前台中json
    格式像这样FCKeditor:'FCKeditor txt 数据'  但问题出来了,我在后台进行了json处理反正是我对已知的哪些有问题字符进行了过滤,但情况是总会不时的出错(由于使用的.net1.1没有像.net3.5哪种序列化json的类库),即前台中json字符在变成对象时报错。
       所以我就想在前台向后台传时就进行处理,如果有错就给用户提示,说你的字符中有错不能提交并指出问题在哪里。
      

  5.   


    function escapeJavaString(str) {
    return escape(str).replace(/%(?=u)/g, "\\").replace(/%/g, "\\x");
    }var htmlCode = ",:{}[];\"'?!@#$%^&*()_+";var json = '{FCKeditor: "' + escapeJavaString(htmlCode) + '" }';// eval("json=" + json);
    // alert(json.FCKeditor);
      

  6.   

    在后台取出来以后,构造成JSON对象之前,使用转义字符进行转义吧