Solved it!, for anyone in the future who stumbles upon this question, here is the answer. Place the following into a new javascript file in the project.
String.prototype.toTitleCase = function() {
var i, j, str, lowers, uppers;
str = this.replace(/([\W_]+[\s-]*) */g, function(txt) {
return txt.charAt(0).toUpperCase() + txt.substr(1).toLowerCase();
});
// Certain minor words should be left lowercase unless
// they are the first or last words in the string
lowers = ['A', 'An', 'The', 'And', 'But', 'Or', 'For', 'Nor', 'As', 'At',
'By', 'For', 'From', 'In', 'Into', 'Near', 'Of', 'On', 'Onto', 'To', 'With'];
for (i = 0, j = lowers.length; i < j; i++)
str = str.replace(new RegExp('\\s' + lowers + '\\s', 'g'),
function(txt) {
return txt.toLowerCase();
});
// Certain words such as initialisms or acronyms should be left uppercase
uppers = ['Id', 'Tv'];
for (i = 0, j = uppers.length; i < j; i++)
str = str.replace(new RegExp('\\b' + uppers + '\\b', 'g'),
uppers.toUpperCase());
return str;
}
and then call it on your database input/output as per the examples giving in the tutorial page listed above, using the following:
return value.toTitleCase();
This will capitalise the first letter of every word in the input box, and not capitalise certain minor words.