Quantcast
Channel: Active questions tagged javascript - Stack Overflow
Viewing all articles
Browse latest Browse all 142353

Format input with regex

$
0
0

I have a input field which is a percent value, i am trying for it to display as % when not focused in and when focused in it will loose the %, also the input field needs to avoid chars on it. I'm using a type"text" input field with some jQuery.

$(document).ready(function() {
  $('input.percent').percentInput();
});
(function($) {
          $.fn.percentInput = function() {
            $(this).change(function(){
              var c = this.selectionStart,
                  r = /[^0-9]/gi,
                  v = $(this).val();
              if(r.test(v)) {
                $(this).val(v.replace(r, ''));
                c--;
              }
              this.setSelectionRange(c, c);
            });
            $(this).focusout(function(){
              $(this).val(this.value + "%");
            });
            $(this).focusin(function(){
              $(this).val(this.value.replace('%',''));
            });
          };
        })(jQuery);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script><input class="percent" value="2"></input><input class="percent" value="4"></input>

on the snippet it does not behave the same as on my app, not sure why but the intended result is for it to erase any char that is not a digit or "only" 1 % sign.


Viewing all articles
Browse latest Browse all 142353

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>