I'm trying to store the result of checked checkboxes in local storage but when I try to save I get the error mentioned above.
Not quite sure what is undefined since I see the property in my code.
Here's the code:
var getCheckboxValue = function (){
var checkboxes = document.forms[0].features;
for(var i=0, j=checkboxes.length; i<j; i++){
if(checkboxes[i].checked){
console.log(checkboxes[i].value);
//featuresValue = $(features).value();
}else{
checkboxes = No
}
}
}
var storeData = function (){
var id = Math.floor(Math.random()*10000001);
//getSelectedRadio();
getCheckboxValue();
var item = {};
item.brand = [Brand,$(brand).value];
item.model = [Model,$(model).value];
item.comments = [comments,$(comments).value];
//item.acoustic = [acoustic, acousticValue];
item.features = [features,checkboxes];
//Save data into local storage: Use Stringify to convert our object to a string
localStorage.setItem(id,JSON.stringify(item));
alert(Contact Saved!);
}
//set link & submit click events
var save = $(button);
save.addEventListener(click, storeData);
and here's the relevant html:
<li>Features:
<ul>
<li><input type=checkbox name=features value = Cutaway id=cutaway /><label for=cutaway>Cutaway</label></li>
<li><input type=checkbox name=features value = Finished id=finished /><label for=finished>Finished</label></li>
<li><input type=checkbox name=features value = Inlay id=inlay /><label for=inlay>Inlay</label></li>
<li><input type=checkbox name=features value = Wide Neck id=wneck /><label for=wneck>Wide Neck</label></li>
<li><input type=checkbox name=features value = Left-handed id=lhanded /><label for=lhanded>Left-handed</label></li>
</ul>
</li>
Alternatively, here's a link to the full code on github:
https://github.com/b80266/VFW-Project-2/blob/master/additem.html
https://github.com/b80266/VFW-Project-2/blob/master/main.js