看板 Web_Design 關於我們 聯絡資訊
事情是這樣的.... 系統開新視窗時, 因為不想把參數都用get串在網址上 所以會先開啟空白視窗, 再寫javascript 把傳入參數帶入 form post 做submit換頁 所以看起來就像window.open, 但是網址不會有參數串在上面,因為是post Chrome 更新版本後, 發現網頁編碼不能直接透過document.charset直接更改, 已至於傳入的參數若有中文都會產生亂碼 這時就有個同事說 為什麼中文都不先做url encode呢? 這應該是基本吧 問題是....程式是用 form post的方式, 難道每個網頁post下一頁, 每個input參數都需要先做url encode編碼過, 下一頁再全部decode嗎 請問一下...我是真的基礎不好嗎 ? :( 覺得桑腥 所以form post都需要先對所有 form data 做...url encode? PS:上述問題原因是 chrome新版本不能直接修改document.charset 當原本開啟的時候不知為何預設是big5無法直接改成utf8 所以 big5 submit到 utf8 編碼不同導致文字亂碼!! -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 59.124.78.2 ※ 文章網址: https://www.ptt.cc/bbs/Web_Design/M.1441344475.A.935.html
LPH66: 本來就規定 post 出去的資料都是 urlencode 過的東西了 09/04 14:07
LPH66: 伺服器在收到資料解碼後才送給你寫的伺服器程式 09/04 14:09
hit1205: 不過原po是用form送出... 這樣應該不是url encode的問題? 09/08 18:12
hit1205: <form>預設本來就會把資料encode才送出吧 09/08 18:13
hit1205: 另外我查了一下,document.charset是Chrome45移除的 09/08 18:14
hit1205: 而且並不是標準的一部份(Firefox則是不支援) 09/08 18:14
hit1205: 至於原po說預設是預設是big5,這點有兩種因素會影響 09/08 18:17
hit1205: 一個是<meta>指定的值,要不要在空白頁裡加上編碼的指定? 09/08 18:17
hit1205: 另一點則是伺服端送出的header 09/08 18:18
steny138: 後來利用form的accept-charset指定為utf8比較輕鬆! 09/08 22:14