function get_componentDHTML(_id, _c, _elements, _styles){

	var componentDHTML = {
		id: "", 
		c: "", 
		elements: [],
		styles: [],
		init: function (id, c, elements, styles){
			this.id= id; this.c= c; this.elements= elements; this.styles= styles; 
		},
		build: function() {  
			if (this.c != "") {
				if (!this.parsed) this.parseId();
				var _c = this.c;
				var _id = this.id;
				$(this.elements).each(function (i) {
					if (this.tag != "") {
						if (this.c == "") this.c = _c ;
						$(["<" , this.tag , " " , 
							(((this.tag=="INPUT") && (typeof this.tp != "undefined")) ? " type=\"" + this.tp + "\"" : "") , 
							" id=\"" , this.id , "\" >" , this.txt , "</" , this.tag , ">"].join("")).appendTo("#" + this.c);
						if (typeof this.attr != "undefined") $([this.tag, "#", this.id].join("")).attr(this.attr);
					}
				});
			} 
		},
		style: function() {
			if (!this.parsed) this.parseId();
			$(this.styles).each(function (i) {
				if (this.id != "") {
					$("#" + this.id).css(this.style);
				}
			});
		},
		make: function() {
			this.build();
			this.style();
		},
		// privates config attr
		parsed: false,
		// privates config methods
		parseId: function() {
			var _id = this.id;
			this.parsed = true;
			$(this.elements).each(function (i) {
				if (this.id != "") this.id = _id + this.id;
				if (this.c != "") this.c = _id + this.c;
			});
			$(this.styles).each(function (i) {
				if (this.id != "") this.id = _id + this.id;
			});
		},

		final: function() {}
	}
	componentDHTML.init(_id, _c, _elements, _styles);
	return (componentDHTML);
}