jqueryserializearray

How do I access values created by serializeArray in JQuery?


I have this HTML:

<form id='myform'>
<input name='title' value='foo'/>
</form>

And I create an object array from it like this:

var dataArray = $("#myform").serializeArray();

Now how do I access 'title' in dataArray? This does not work:

alert(dataArray['title']);
alert(dataArray['title'].val());

Solution

  • 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']);