遵循XML,JSON标准统一平台实现

yuanhongqian
   2013-03-14 12:10:18发布  2017-02-21 17:52:27更新 0收藏, 3227浏览
WebAPP技术
0

1        遵循XML标准对特殊字符全平台处理统一

1.1.1 背景和概述

    目前由于PC,IPhone采用自定义xml解析器,android采用标准xml解析器,ExMobi各个平台对特殊字符处理存在差异,引起二次开发人员疑惑及其他未知错误,考虑对各平台处理统一。

1.1.2 修改点

ExMobi中一般需要处理以下5种特殊符号

                lt;       <(小于号)

               gt;       >(大于号)

                &      &(“and”符)

               '     '(撇号或单引号)

                "     "(双引号)

                

1:xml中使用

a: text内

   < 与 '  均代表 '

   " 与 " 均代表 "

   > 与 >   均代表 >

   &      代表 &,不支持直接放置 &

   <        代表 <,不支持直接放置 <

   

b: 属性内

   ' 与 '  均代表 '

   > 与 >   均代表 >

   "      代表 "

   " 当属性通过 ‘   ‘ 包裹时,可直接放置 “,当属性通过 ” “包裹时,必须用"

   &        代表 &,不支持直接放置 &

   <        代表 <,不支持直接放置 <

   

   

2: js中使用  注:为放置xml转义引起歧义,js语句必须被<![CDATA[   ]]>包裹

        a:通过innerHTML构建控件,控件属性或者text中

                <       代表 <

                >       代表 >

                &      代表 &

                '     代表 '

                "     代表 "

                

如:function change(){

                        var ctrl = document.getElementById("mydiv1");

                        ctrl.innerHTML = "<textarea id=\"mytextarea1\"><>'"&</textarea><div id=\"mydiv2\" href=\"<>'"& \"><>'"& </div>";

                        var ctrl2 = document.getElementById("mydiv2");

                        alert(ctrl2.href);

          }  

   结果为:<>/"&

   

   b:通过js设置控件属性

          <      代表 <

          >      代表 >

          &     代表 &

          '    代表 ' 

          "    代表 "

                

如:function change(){

                        var ctrl = document.getElementById("mytextarea1");

                        ctrl.value = "<>'"&";

          }

          设置后结果为:<>'"&

         

                \"        代表 "

                \'        代表 ‘

                &         代表 &

                <         代表 <

                >         代表 >

如:function change(){

                        var ctrl = document.getElementById("mytextarea1");

                        ctrl.value = "\"\'&<>";

          }

         设置后结果为:"'&<>

ExMobi客户端内容的展现必须符合XML规范,建议大家在看下面内容之前先看此贴

http://bbs.exmobi.cn/forum.php?mod=viewthread&tid=63&extra=

               

下载APP
扫码下载栗子社区APP