I have created the equivalent of a multi dimensional array in javascript using objects.
I want to then display this information as a nested list but I keep going round in circles getting confused!
this is an example of the object -
Code:
returnArray = new Object;
returnArray["validationWarnings"] = new Object;
returnArray["validationWarnings"]["Type"] = new Object;
returnArray["validationWarnings"]["Type"][0] = "must be set";
returnArray["validationWarnings"]["Type"][1] = "must be of value - auto, advance, emergency";
returnArray["validationWarnings"]["Note"] = new Object;
returnArray["validationWarnings"]["Note"][0] = "must be set";
returnArray["validationWarnings"]["Note"][1] = "must be less than 100 characters";
I would like to see output nested, like this -
validationWarnings
----Type
--------must be set
--------must be of value - auto, advance, emergency
----Note
--------must be set
--------must be less than 100 characters
the actual object is much longer than this, and have objects within objects within objects.
I keep going round in circles with this! there must be a simple way.
First of all I don't like the way you are building up "returnArray"
returnArray = new Array();
returnArray["validationWarnings"] = new Array();
returnArray["validationWarnings"]["Type"] = new Array();
returnArray["validationWarnings"]["Type"][0] = "must be set";
returnArray["validationWarnings"]["Type"][1] = "must be of value - auto, advance, emergency";
returnArray["validationWarnings"]["Note"] = new Array();
returnArray["validationWarnings"]["Note"][0] = "must be set";
returnArray["validationWarnings"]["Note"][1] = "must be less than 100 characters";
First of all I don't like the way you are building up "returnArray"
returnArray = new Array();
returnArray["validationWarnings"] = new Array();
returnArray["validationWarnings"]["Type"] = new Array();
returnArray["validationWarnings"]["Type"][0] = "must be set";
returnArray["validationWarnings"]["Type"][1] = "must be of value - auto, advance, emergency";
returnArray["validationWarnings"]["Note"] = new Array();
returnArray["validationWarnings"]["Note"][0] = "must be set";
returnArray["validationWarnings"]["Note"][1] = "must be less than 100 characters";
does this help?
Thanks for that.
Not sure why I was using Object instead of Array!
Now how can I go about outputing the array as a nested list?
<script type="text/javascript">
returnArray = new Array();
returnArray["validationWarnings"] = new Array();
returnArray["validationWarnings"]["Type"] = new Array();
returnArray["validationWarnings"]["Type"][0] = "A must be set";
returnArray["validationWarnings"]["Type"][1] = "must be of value - auto, advance, emergency";
returnArray["validationWarnings"]["Note"] = new Array();
returnArray["validationWarnings"]["Note"][0] = "B must be set";
returnArray["validationWarnings"]["Note"][1] = "must be less than 100 characters";
for(var i=0;i<returnArray["validationWarnings"]["Type"].length;i++){
document.write("<ul>");
document.write("<li>"+returnArray["validationWarnings"]["Type"][0]+" : "+returnArray["validationWarnings"]["Type"][1]+"</li>");
document.write("</ul>");
}
</script>
Output
Code:
* A must be set : must be of value - auto, advance, emergency
* A must be set : must be of value - auto, advance, emergency
Bookmarks