How do I access values created by serializeArray in JQuery? How do I access values created by serializeArray in JQuery? jquery jquery

How do I access values created by serializeArray in JQuery?


Similar to what Nick posted, but a little cleaner

var dataArray = $("#myform").serializeArray(),    dataObj = {};$(dataArray).each(function(i, field){  dataObj[field.name] = field.value;});

Then access the same way

alert(dataObj['title']);


You can either loop through, as @Tom has...or if you're accessing more than one, be a bit more efficient and loop once, creating an object like this:

var dataArray = $("#myform").serializeArray(),    len = dataArray.length,    dataObj = {};for (i=0; i<len; i++) {  dataObj[dataArray[i].name] = dataArray[i].value;}

Then you can access it like you want, for example:

alert(dataObj['title']); //or alert(dataObj.title);

You can test it out here.


alert(dataArray[0].name);alert(dataArray[0].value);

So:

for (i=0; i<dataArray.length; i += 1) {    if (dataArray[i].name === "title") {        // do something here...    }}