Pardon me for not being clear, but have thia script that is really long. When I have it live, I get this error in Chrome's Console.
Uncaught TypeError: Cannot read property 'substr' of undefined
here is the snippet of code where it is reading from.
var formIddd = $('select[class~="FormField"]').get(numSelec).name.substr($('select[class~="FormField"]').get(numSelec).name.length-3,2); I looked up substr on google and it appears to be a known property. I also found the classes. I have played with the lengths, but still getting stuck. It used to work until BigCommerce did an update.
Any advice much appreciated, cheers.
103 Answers
You are not populating your array. The if check is false.

so basically you are doing this
var arrayOfSelectOfCountry = []; var numSelec = arrayOfSelectOfCountry[-1]; //undefined which results in the error above.
maybe at some point the substr() is called on a null reference
so before using it check that reference for nullity like that
function(jsonDate) { if (jsonDate!=null) { //if the variable is not null you can use substr with no problems var date = new Date(parseInt(jsonDate.substr(6))); //..... } take look at my full snippet from Datatable
columns: [ { 'data': 'ID' }, { 'data': 'Name' }, { 'data': 'DateCreated', 'render': function(jsonDate) { if (jsonDate!=null) { var date = new Date(parseInt(jsonDate.substr(6))); return date.toLocaleDateString(); } return "-"; } }, Instead of:
variable.substring(0, 7) Do:
variable && variable.substring(0, 7) This is how you check for nullity like Basheer mentioned