Convert Form Data to json or XML with jQuery

1. 

It actually goes to JSON and then to XML, but here's an adaption of json2xml.js specifically for use with jQuery's serializeArray function:

 

function  json2xml(o, tab) {
  
var  toXml  =   function (v, name, ind) {
    
var  xml  =   "" ;
    
if  ( typeof (v)  ==   " object " ) {
      
var  hasChild  =   false ;
      
for  ( var  m  in  v) {
        
if  (m.charAt( 0 ==   " @ " ) {
          xml  +=   "   "   +  m.substr( 1 +   " =\ ""  + v[m].toString() +  " \ "" ;          
        }  else  {
          hasChild  =   true ;
        }
      }
      
if  (hasChild) {
        
for  ( var  m  in  v) {
          
if  (m == " name " ) {
            xml  +=   " < "   +  v[m]  +   " > "   +  v[ ' value ' +   "" ;
          }
        }
      }
    }
    
return  xml;
  }, xml = "" ;
  
for  ( var  m  in  o) {
    xml  +=  toXml(o[m], m,  "" );
  }

  
return   "
" + xml + "
" ;

}

 

 

and then I call it like this: 

 

var  formjson  =  $( ' form#myform ' ).serializeArray();
// var formxml = $.compactJSON(mjson);
var  formxml  =  json2xml(formjson);
alert(formxml);
$.post( " /collect.cgi " , {  ' data ' : formxml },  function  (data){ });

 

 

http://www.docunext.com/blog/2009/01/convert-form-data-to-xml-with-jquery.html

 

2. Serialize form to JSON with jQuery

$.fn.serializeObject  =   function ()
{
    
var  o  =  {};
    
var  a  =   this .serializeArray();
    $.each(a,  function () {
        
if  (o[ this .name]) {
            
if  ( ! o[ this .name].push) {
                o[ this .name]  =  [o[ this .name]];
            }
            o[ this .name].push( this .value  ||   '' );
        }  else  {
            o[ this .name]  =   this .value  ||   '' ;
        }
    });
    
return  o;
};

 

 

http://stackoverflow.com/questions/1184624/serialize-form-to-json-with-jquery

 

3. 

 jquery serializeArray

$( ' form ' ).submit( function () {
  alert($( this ).serializeArray());
  
return   false ;
});

 

 

 http://api.jquery.com/serializeArray/

 

你可能感兴趣的:(convert)