JQuery aracılığıyla bir formu ASP.NET sayfasına doğrudan POST veya GET ile gönderebilmek için Form Serialize işlemi gerçekleştirilir. Bu amaçla .serialize() veya .serializeArray() yordamları kullanılır.
Özellikle Internet Explorer ortamında bir formu serialize edip ASP.NET sayfasında okumaya çalıştığımızda Türkçe Karakter sorunu yaşanmaktadır. Örneğin “öçşğüİ” değeri öçÅ?Ä?Ã¼Ä şeklinde görünmektedir. Bu karakterlerin UTF-8 olarak gönderilmesi için aşağıdaki örnekte gösterildiği gibi “application/x-www-form-urlencoded; charset=utf-8¨ şeklinde content teype belirmek gerekiyor.
var formValue=$("#aspnetForm").serializeNoViewState(); $.ajax({ type: "POST", url: "OrnekSayfa.aspx?Prm=1", data: formValue, beforeSend: function (xhr) { xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded; charset=utf-8"); }, contentType: "application/x-www-form-urlencoded; charset=utf-8", dataType: "json", success: function (msg, status) { alert(msg); }, error: function (xhr, msg, e) { alert("Hata Oluştu!\n" + xhr.responseText +"\n"+msg ); }, complete: function() { alert('İstek başarıyla gönderildi.'); } });