Updatepanel et encoding non UTF-8 - la suite
Il y a quelques temps, je vous avais parlé d'un bug avec les updatepanels lorsqu'on utilisait un encoding non UTF-8 : BUG : updatepanel et encoding ISO (non UTF-8)
Pour corriger temporairement le problème j'avais fait une bidouille qui consistait à redéfinir une fonction native de l'ECMAScript : EncodeURIComponent, ce qui est très loin d'être propre. Le même jour, j'ai aussi remonté le bug sur connect : using non UTF-8 encoding will break special character with updatepanel.
Quelques mois plus tard, Bertrand Leroy m'a signalé que le bug était corrigé dans ASP.net 3.5 beta 2 : bonne nouvelle :)
Aujourd'hui mon bug a évolué sur connect. Un nouveau workaround beaucoup plus propre est proposé par Microsoft :
Sys.Application.add_load(function(sender, args) {
if (!args.get_isPartialLoad()) {
Sys.WebForms.PageRequestManager.getInstance().add_beginRequest(function(sender, args) {
args.get_request().get_headers()['Content-Type'] =
'application/x-www-form-urlencoded; charset=utf-8';
});
}
});
Si vous utilisez les updatepanels avec un encoding non UTF-8 il vous faudra utiliser ce workaround plutot que mon ancienne bidouille, en attendant la RTM de ASP.net 3.5 ...