2013年12月12日 星期四

谢 ....????

這幾天在寫個程式...正想說沒問題要完結了

然後就馬上找到一個問題(所以以後寫程式絕對不能這樣想)

問題大概是這樣:

一個Gridview在編輯模式下,原本的 Label 變成 Textbox 就會有亂碼

然後你把這串亂碼丟到孤狗上,他竟然又變回原本你想看到的字

像是...谢金燕,你把前面那串丟去估狗,發現他竟然是簡體字的'謝"...

這還真的嚇到我了,因為&#的特殊符號會被.net抓取為非法字元,然後就會跳到 Exception...


但其實上網找一下,其實解法也不難,就是在原有的 Gridview 上,

再新增一個 TemplateField ,記得要 Bind 在原本的欄位上,

在 Label 部分要修改成以下形式

Text = '<%# HttpUtility.HtmlDecode(Eval("你的欄位").ToString())  %>'>

而在 TextBox 部分就不用再另外去修改,這樣就可以了

沒錯~_~  這就是 Html 編碼的問題


後來發現另外一種解法,只要在gridview設定上選擇好就可以啦~