DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> JavaScript入門知識 >> AJAX入門 >> AJAX詳解 >> MagicAjax.net2.0 框架特殊字符的處理
MagicAjax.net2.0 框架特殊字符的處理
編輯:AJAX詳解     
 發現這麼多人在用這個MagicAJax框架,但是沒有人發現這個框架對特殊字符Html標記未處理。回調後對頁面中特殊字符顯示問題,比如特別符號 &#?; (其中 ? 代表 ISO 8859-1 的編碼) < < > > & & " "  等,當一本框值為<100公的的豬,其中有一小於號 (<),而&符號又被譯出(& amp),最後文本框的值將會變成& amp lt,這樣幾個字符。有如下兩種解決辦法:
         解決辦法一:在頁面中顯示數據時所有的特殊符號替換為全角,不過這個方法太笨了,也太麻煩了。建議使用第二種方法。
         例如:
                  string str = "所有<100公所的豬";
                   str.Replace('<', '<');//替換為全角,不過,還有< < > > & 這些符號哦,一個個替換就是了,
         解決辦法二:更改MagicAjax源代碼,不用怕,^-^,  這個更改並不難,首先到官方網站下載。net2.0的源代碼下來,打開項目,找到一個為   AJaxCallHelper.cs     的類,這類的功能還真是強啊。在裡面找到方法為EncodeString(string str),源代碼如下:
          public static string EncodeString(string str)
        {
            //TODO: use 1 regular expression (faster)
            System.Text.StringBuilder sb = new System.Text.StringBuilder(str);
            sb.Replace("\\", "\\\\");
            sb.Replace("\"", "\\\"");
            sb.Replace("\r", "\\r");
            sb.Replace("\n", "\\n");
            sb.Replace("\t", "\\t");
            sb.Replace("<", "<");
            sb.Replace("&", "&");
            sb.Insert(0, '\"');
            sb.Append('\"');
            return sb.ToString();
        }
         把這些特殊字符在顯示的時候替換不OK了,最後Release項目,問題解決了。哦也!
               讓MagicAJax支持中文!問題解決並不難,網上已有很多解決的相關文章,這裡就不多說了,不過在項目中這個方法其實也蠻好用的,
         AjaxCallHelper.WriteAlert("數據保存成功!")//當一按扭為AJaxpanel內時,注冊Javascript 的alert腳本是彈不出消息框的,用這個彈出來就行了,看懂這個框架機制的你就知道它為什麼彈出不消息框了,hoho。
XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved