Type Conversion
Type Conversion
mspangler
Posts: 2Questions: 0Answers: 0
I upgraded from v1.6.2 to v1.7.3 and noticed that the data I was getting back from the server wasn't being converted to the appropriate type. For example I'm using the 'fnRowCallback' function to process every row and lets say aData[2] is a boolean value of 'true'. v1.6.2 reads aData[2].constructor as Boolean while v1.7.3 reads the constructor as a String. This might have been done on purpose but seems it should convert the object to the appropriate type.
This discussion has been closed.
Replies
This was indeed done on purpose - there were a couple of reasons for doing this:
1. The data that is to be displayed will end up as a string when shown in the table, so it is expected that string (or some other display format like it, i.e. a number) would be given
2. It makes sorting / filtering etc much easier and faster when dealing with only strings
Having said that, I 110% agree that this is not a perfect situation! The type conversion happens after fnRender, so if you are modifying the data for display there, you'll get your original data type - but when it comes to the display callback functions like fnRowCallback, the conversion will already have happened.
What I plan to do in future is to provide a method to attach data to a row, which will not be touched by DataTables. This meta data can then be used for rendering or whatever (for example a row ID is a common one).
Allan