You can see in this fiddle that I'm looking for a solution that lets me join a couple of JSON fields in the same Datatables column. This is the solution I found:
function ( data, type, full ) {
var a = (full["container-title"]);
var b = (full["volume"]);
var c = (full["issue"]);
var d = (full["page"]);
var x = ([a, b, c, d]);
return $.map( x, function ( d, i ) {
return d;}).join( ', ' );
}
This outputs the values I want, separated by commas. However, I would like to add some html to each variable before the output. Say, for instance, I want "volume" to be preceded by "Vol.". But if I try this
var a = 'Vol.' + (full["volume"]);
the value is passed as "undefined" and completely unusable. Any other route?
Your approach does work, check this JSFiddle (https://jsfiddle.net/annoyingmouse/0zdjy1yz/6/). What you were running into was not being able to find the relevant data for
issue
as it's not in your data, if you do a check before adding it to the array you're laughing:Also, your script includes were in the wrong order. :-D
This is more elegant if you HAVE to specify which items you want