为什么不把<E1> <E2>aaa </E2> </E1>以Element方式作为body的孩子节点添加到body下面呢?

解决方案 »

  1.   

    <body>   
      <textarea   id='t'   rows=20   cols=20></textarea>   
        
      <script>   
      document.getElementById('t').innerText='a&lt;&amp;&gt;';   
      </script>   
     </body>比如像上面这样:
    这样你放在<textarea></textarea>之间的任何特殊字符都不会被转换,
    这里只是介绍解决方法
      

  2.   

    或者也可以用这个方法:
    /*将字串转为html格式*/   
          public   String   strToHtml(String   s)   
          {   
              if   (s==null||s.equals(""))   return   "";   
              s   =   s.replaceAll("&",   "&amp;");   
              s   =   s.replaceAll("<",   "&lt;");   
              s   =   s.replaceAll(">",   "&gt;");   
              s   =   s.replaceAll("   ",   "&nbsp;");   
          //     s   =   s.replaceAll("\n",   "<br/>");   
            //   s   =   s.replaceAll("'",   "&#39");   
              return   s;   
          }   
        
          /*将html格式转为字串*/   
          public   String   strToHtml(String   s)   
          {   
              if   (s==null||s.equals(""))   return   "";   
              s   =   s.replaceAll("&amp;","&");   
              s   =   s.replaceAll("&lt;","<");   
              s   =   s.replaceAll("&gt;",">");   
              s   =   s.replaceAll("&nbsp;","   ");   
              //s   =   s.replaceAll("<br/>","\n");   
              //s   =   s.replaceAll("&#39","'");   
              return   s;   
          }   
      

  3.   

    这样你放在 <textarea> </textarea>之间的任何特殊字符都不会被转换, 
    这里只是介绍解决方法
      

  4.   

    看来楼主跟我一样,也是个比较懒惰的人,哈哈!
    另外,楼主对于DOM还不够熟悉。addTextNode()方法是创建文本节点,而文本节点只能包含文本,里面是不可能包含元素节点的,所以对于<El></E1>这样的元素肯定会转换的,不然就不是文本节点了,而变成一个复杂的元素节点了。所以我敢断言,Java API中没有任何现成的方法能实现楼主的目的。楼主还是一步一步来吧。参考代码:
    SOAPElement e1 = body.addChildElement(new QName("E1")); 
    SOAPElement e2 = e1.addChildElement(new QName("E2")); 
    e2.addTextNode( "aaa" );