Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Few questions about directives
Message
From
20/03/2015 05:12:36
 
General information
Forum:
Javascript
Category:
Other
Miscellaneous
Thread ID:
01615790
Message ID:
01616991
Views:
40
This message has been marked as a message which has helped to the initial question of the thread.
>>I tested using both positive and negative priority and your directive always ran first. I *did* get it to work by changing your formatter to:
>>                    function bind() {
>>                        return ngModel.$formatters.unshift(function (value) {
>>                            return format(value);
>>                        });
>>                    }
Don't know why the priority approach didn't work but this shows that your formatter needs to be first in the $formatters array.....
>
>There is some activity in the issue I raised
>
>https://github.com/angular/angular.js/issues/11157#issuecomment-75706528
>
>and I also posted a new plnkr
>
>http://plnkr.co/edit/z1BWMoPmnsCZlAUra0os?p=preview

Using Priority and push gives exactly the same formatter execution order (ie angulars directive followed by yours). Behaviour is the same in both cases.
What exactly is your problem with this code ?
BTW you should probably also add 'event.preventDefault()' in your keydown event handler - simply returning true/false only works in IE.

Also you need to prevent multiple decimal points:
if (isDecimal(event.keyCode)) {
                          if (event.srcElement.value.indexOf('.') !== -1) {
                              event.preventDefault();
                              return false;
                          }
                      }
(or use a regex)
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform