我在做信息录入FORM的时候使用了EXT的HtmlEditor 控件。发现这个控件在把数据存入ORACLE 10G数据库时,在原有数据基础上杂着HTML的标签。
     等我再想把数据取出来组成json进行显示的时候,显示总是有问题,因为HTML的内容会导致JSON无法分辨哪个是KEY哪个是VAULE。求助各位高手,有没有什么好办法,让HtmlEditor 能够正确接收JSON数据。
JSON的部分信息如下
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri">第四条</SPAN><FONT face=Calibri> </FONT><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri">勘查下列矿产资源,由国务院地质矿产主管部门审批登记,颁发勘查许可证:</SPAN></P>
<P style="MARGIN: 0cm 0cm 0pt" class=MsoNormal><SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri">(一)跨省、自治区、直辖市的矿产资源;</SPAN></P>

解决方案 »

  1.   

    大哥 你这是JSON吗  我咋没看出来呢?
      

  2.   

    AddLawForm = new Ext.form.FormPanel({
    id: 'AddLawForm',
    labelAlign: 'top',
    frame:true,
        bodyStyle:'padding:5px 5px 0',
        width: 600,
        reader:new Ext.data.JsonReader({root:'root'},lawPlant),
        bbar: AddLawFormBTN,
    items: [ID,{
                layout:'column',
                items:[{
                    columnWidth:.5,
                    layout: 'form',
                    items: [AddclsCombo,AddLAW_NAME]
                },{
                    columnWidth:.5,
                    layout: 'form',
                    items: [AddareaCombo,AddEDITOR]
                }]
            },AddFILE_CONTENT]

    });
      

  3.   

    我从数据库取出的JSON大概是这样的:
    {totalProperty:'3',root:[{ID:'2',LAW_NAME:'3',CLA:'矿业权类',AREA:'全国',EDITOR:'3',EDIT_TIME:'2011-07-13',FILE_CONTENT:'<FORM id=form1 method=post name=form1 action=lawsDetail.aspx?id=6>
    <DIV><INPUT id=__VIEWSTATE value=/wEPDwUJODExMDE5NzY5D2QWAgIDD2QWAgIBDw8WAh4EVGV4dAXo4AI8U1BBTiBzdHlsZT0iRk9OVC1GQU1JTFk6IOWui+S9kzsgbXNvLWFzY2lpLWZvbnQtZmFtaWx5OiBDYWxpYnJpOyBtc28taGFuc2ktZm9udC1mYW1pbHk6IENhbGlicmkiPg0KPFAgY2xhc3M9TXNvTm9ybWFsIHN0eWxlPSJNQVJHSU46IDBjbSAwY20gMHB0Ij48U1BBTiBsYW5nPUVOLVVTPjw/eG1s...
    悲剧你们已经看到啦。后面还好多呢。没法放上来了
      

  4.   

    问题解决了,由于通过网页或者word粘贴进来的文件默认都有\r\n的回车,导致存入数据库的时候这些回车仍然被保留下来。当我从数据库中取出形成JSON数据的时候,数据被\r\n影响进行回车,导致数据不连续。EXT无法正常显示。
    解决方案如下,在数据存入数据库的时候,通过String的replace方法进行字符转换即可!
                               
    FILE_CONTENT=FILE_CONTENT.replace(',', ',');
    FILE_CONTENT=FILE_CONTENT.replace("\'", "\"");
    FILE_CONTENT = FILE_CONTENT.replace("\r", "").replace("\n", "");
    FILE_CONTENT = FILE_CONTENT.replace("<BR>", " ");结贴!