angular-xeditable icon indicating copy to clipboard operation
angular-xeditable copied to clipboard

Transforming value before and after edit

Open piotr-dobrogost opened this issue 7 years ago • 3 comments

I would like to use editable-datetime-local field but the problem is Firefox shows plain text input instead proper control for datetime-local field (https://caniuse.com/#feat=input-datetime). Because of this I need a way to format value stored in a model and present formatted value in edit field. Also I need a way to make Date object myself when editing is finished (sadly Firefox is able to make Date object only from ISO 8601 string which must include 'T' infix and don't handle space instead of this infix for datetime-local field).

How should I go about transforming value before and after edit?

Similar question on SO – Making html5 input field of type “datetime-local” compatible with Firefox

piotr-dobrogost avatar Mar 19 '18 12:03 piotr-dobrogost

What about the combodate That uses moment.js which should be able to handle any date/time functions you need.

ckosloski avatar Mar 19 '18 13:03 ckosloski

Thanks for suggestion. I've seen all date and time controls listed in the docs but datetime-local on Chrome and Edge is much nicer and one day it will be available on Firefox too. That's why I wanted to try and make it work. Any idea how to perform my pre and post edit transformations?

piotr-dobrogost avatar Mar 19 '18 14:03 piotr-dobrogost

I guess I'm not 100% sure what you are asking for. If your value your using is user.date why can't you just format it like $scope.user.date = format your date For display after saving you have something like {{ (user.date | date: "yyyy-MM-dd") || 'empty' }} Look into moment.js for handling dates.

ckosloski avatar Mar 19 '18 15:03 ckosloski