WebService 和 js中转义字符的问题

    技术2022-05-20  41

    1. webService参数中含有转义字符

     如登录方法中假设传入用户名为test\user01,在方法的互相调用过程中会转义,对参数的处理如下:

     public string WS_Login(string userName, string userPwd) { //对传入参数进行处理 string logName = @userName; string logPwd = @userPwd; }

    字符串中转义字符注意:

    如果字符串中含有转义字符(\)如   string  userName = "test\user01" :

     (1)  我们编译时可以写成string  userName = "test\\user01" 

     解释:计算机出现转义字符(\)计算机会认为 \+后面字符 为转义字符    

     (2) 我们编译时还可以写成string  userName = @"test\user01"

    在字符串面前加一个@符号有两种意义 1. 字符串中如果有\,则不再认为是转义字符 2. 使字符串可以换行

     

    2. js中对特殊字符的处理问题

    在js中读出来的时候'<'\'>'等转义字符被转换成了&XX;的形式从.net的webservice中 return“<br/>” 在js中读出来的时候'<'\'>'等转义字符被转换成了&XX;的形式

    对于这种转移过来的字符可以采用下面的方法进行处理

     

    <html> <body> <mce:script type="text/javascript"><!-- document.write(decodeURI('&><')); // --></mce:script> </body> </html>

     

    相反,如果要将“<”、“>”等特殊字符转换为&XX;的形式,则可以使用encodeURI()函数。


    最新回复(0)