inputEx - SerializeField Usage

Basic SerializeField creation (JSON serialization)

Please enter your name
Log :
1var field = new inputEx.SerializeField({ 
2    parentEl: 'container1',  
3    label: 'Your name'
4    description: 'Please enter your name'
5     
6    subfield: { 
7                type: 'group'
8                fields: [ 
9                    { name: 'firstname', typeInvite: 'firstname' }, 
10                    { name: 'lastname', typeInvite: 'lastname' } 
11                ], 
12                required:true 
13    } 
14     
15}); 
16 
17  var el = YAHOO.util.Dom.get('container1'); 
18 
19var button1 = inputEx.cn('button'nullnull"SetValue with '{\"firstname\":\"Jimi\",\"lastname\":\"Hendrix\"}'"); 
20el.appendChild(button1); 
21YAHOO.util.Event.addListener(button1, "click" ,function() { 
22   field.setValue('{"firstname":"Jimi","lastname":"Hendrix"}'); 
23}); 
24 
25var logDiv = inputEx.cn('div'nullnull"Log :"); 
26el.appendChild(logDiv); 
27field.updatedEvt.subscribe(function(e,params) { 
28    var value = params[0]; 
29    logDiv.innerHTML += "Updated at "+(new Date())+" with value "+value; 
30    logDiv.appendChild(inputEx.cn('br')); 
31}); 
view plain | print | ?

XML serialization

There is an issue because ObjTree needs only 1 root element :

Please enter your name
Log :
1var field = new inputEx.SerializeField({ 
2    parentEl: 'container2',  
3    label: 'Your name'
4    description: 'Please enter your name'
5     
6    serializer: 'xml'
7     
8    subfield: { 
9                type: 'group'
10                fields: [ 
11                    { 
12                        type: 'group'
13                        name: 'person'
14                        fields: [ 
15                            { name: 'firstname', typeInvite: 'firstname' }, 
16                            { name: 'lastname', typeInvite: 'lastname' } 
17                        ] 
18                    } 
19                ] 
20    } 
21     
22}); 
23 
24  var el = YAHOO.util.Dom.get('container2'); 
25 
26var button2 = inputEx.cn('button'nullnull"SetValue"); 
27el.appendChild(button2); 
28YAHOO.util.Event.addListener(button2, "click" ,function() { 
29    var xml = String.fromCharCode(60)+'?xml version="1.0" encoding="UTF-8" ?'+String.fromCharCode(62)+String.fromCharCode(60)+'person'+String.fromCharCode(62)+String.fromCharCode(60)+'firstname'+String.fromCharCode(62)+'Jimi'+String.fromCharCode(60)+'/firstname'+String.fromCharCode(62)+String.fromCharCode(60)+'lastname'+String.fromCharCode(62)+'Hendrix'+String.fromCharCode(60)+'/lastname'+String.fromCharCode(62)+String.fromCharCode(60)+'/person'+String.fromCharCode(62); 
30    field.setValue(xml); 
31}); 
32 
33var logDiv = inputEx.cn('div'nullnull"Log :"); 
34el.appendChild(logDiv); 
35field.updatedEvt.subscribe(function(e,params) { 
36    var value = params[0].replace( new RegExp(String.fromCharCode(60),"g") , '<' ).replace( new RegExp(String.fromCharCode(62),"g") , '>' ); 
37    logDiv.innerHTML += "Updated at "+(new Date())+" with value "+inputEx.htmlEntities(value); 
38    logDiv.appendChild(inputEx.cn('br')); 
39}); 
view plain | print | ?