jQuery Validation Ondalıklı Sayı (Double) Sorunu

j

tr-TR Culture tabanlı bir sistemde jQuery Validation ile NumericTextbox lar üzerinden ondalıklı sayı (double veya decimal) almak istediğinizde ayırma işlemini virgül ile yapmaya çalışırsanız input validation’a takılıyor ve sayfanın post etmesini engelliyor. Eğer virgül yerine nokta kullanırsanız bu sefer post işlemi gerçekleşiyor ancak tr-TR culture yapısına uygun olmadığından değeriniz 0 (sıfır) olarak gelebiliyor.

Aşağıdaki jQuery kodunu jQuery Validation dosyasıdan sonra eklerseniz sorununuz çözülecektir.

[javascript]

jQuery.extend(jQuery.validator.methods, {
number: function (value, element) {
return this.optional(element)
|| /^-?(?:\d+|\d{1,3}(?:\.\d{3})+)(?:[,.]\d+)?$/.test(value);
}
});

[/javascript]

6 comments

  • 2 gündür bu sorunun çözümünü arıyordum,çok teşekkürler..Fluent validation, input mask ve decimal veri tipi kullanarak para formatında sıkıntı yaşıyordum.sayenizde çözdüm..

  • Client tarafında başarılı şekilde valid oluyor fakat ModelState invalid..

  • Teşekkürler, aramadığım yer kalmamıştı. ASP.Net Core MVC projesinde decimal property belirtmeme rağmen invalid data number hatası alıyordum, düzeldi.

Sinan BOZKUŞ

Get in touch

Quickly communicate covalent niche markets for maintainable sources. Collaboratively harness resource sucking experiences whereas cost effective meta-services.