X-Git-Url: http://mop.ddnsfree.com/gitweb/?p=brisk.git;a=blobdiff_plain;f=web%2Ffieldify.js;h=cb14c6e639b7a2ea152aad67074091252acecbad;hp=19bf23fdacc07046b0a4c372e60aaa27f634c0c0;hb=19cfa94e8731ace1ea643d295e1ec57f383952de;hpb=b33a386f21056aab19bcf9825e034d8a41dc651d diff --git a/web/fieldify.js b/web/fieldify.js index 19bf23f..cb14c6e 100644 --- a/web/fieldify.js +++ b/web/fieldify.js @@ -7,6 +7,10 @@ function Fieldify(ancestor, fieldsdescr) this.field = new Array(); for (k in fieldsdescr) { this.field[k] = fieldsdescr[k]; + if (this.field[k].type == 'fields') { + this.field[k].obj = new Fieldify(this.ancestor.getElementsByClassName(k + '_id')[0], + this.field[k].fields); + } } } @@ -28,6 +32,9 @@ Fieldify.prototype = { else if (this.field[k].type == 'radio') { this.fld_radio_set(k, field_values[k]); } + else if (this.field[k].type == 'fields') { + this.field[k].obj.json2dom(field_values[k]); + } } }, @@ -43,6 +50,9 @@ Fieldify.prototype = { else if (this.field[k].type == 'radio') { ret[k] = this.fld_radio_get(k); } + else if (this.field[k].type == 'fields') { + ret[k] = this.field[k].obj.dom2json(); + } } return ret; },