1
   <input type="number"
                           name="content"
                           md-auto-focus


                           ng-model="vm.model.content"
                           ng-required="{{vm.required === null ? true : vm.required}}"
                           ng-attr-ng-max="{{vm.max}}"
                           ng-attr-ng-min="{{vm.min}}">    <div ng-message-exp="['required','min']" ng-if="vm.min != null">
                            <span data-translate
                                  translate-value-length="{{vm.min}}">min</span>
                            </div>
                            <div ng-message="required" ng-if="vm.min == null">
                                <span data-translate>required</span>
                            </div>
                            <div ng-message="number">
                                <span data-translate>numberOnly</span>
                            </div>
                            <div ng-message="max">
                            <span data-translate
                                  translate-value-length="{{vm.max}}">max</span>
                            </div>

                    </div>

this is short version of my code.

as you can see here,

https://regex101.com/r/fvPBTW/1 i use same regex.

It accepts 44.44, 44,

but not 44. , 44.444,44.44.44, 44.44.

I think because of number feature.

But i want to be only entered number and one decimal with number after it.

What can i do?

Manoj Patidar
  • 1,171
  • 2
  • 11
  • 29
vegan
  • 7
  • 5

1 Answers1

1

Try This :

<input type="number" name="content" md-auto-focus ng-pattern=/^[0-9]+(\.[0-9]{1})?$/>

This will accept only 4 , 44 , 4.1 , 4.2 , 444.2

But not 4. , 4.23 , 4.444 , 444.23 ,

Arun AK
  • 4,353
  • 2
  • 23
  • 46
Vivek Doshi
  • 56,649
  • 12
  • 110
  • 122
  • No, it did not do it. Because 4. , 4.23 , 4.444 , 444.23 , are accepted by `type=number` You only removed 1,2 and it made it accept only one numer after decimal point. It did not change anything. – vegan Jun 09 '17 at 07:42
  • Yes , but you have validation via ng-pattern=/^[0-9]+(\.[0-9]{1})?$/ so it doesn't matter , in your case it might be default validation by HTML5 , please check that. – Vivek Doshi Jun 09 '17 at 07:44
  • how can i do this – vegan Jun 09 '17 at 08:05
  • @vegan What does not fit your needs in his answer? In my opinion, it exactly does the job. – Mistalis Jun 09 '17 at 08:26
  • I want only numbers to be entered. but show error message for 4. , 4.23 , 4.444 , 444.23, 44.44., 44.44.44. – vegan Jun 09 '17 at 08:35