textarea

class webix.ui.textarea(data)
Arguments:
  • data (object) – A configuration object

Textarea view.

References

views
text().
helpers
protoUI(), uid().

External references

Official documentation page.

Code

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
webix.protoUI({
    name:"textarea",
    defaults:{
        template:function(obj, common){
            var name = obj.name || obj.id;
            var id = "x"+webix.uid();

            var html = common._baseInputHTML("textarea")+"style='width:"+common._get_input_width(obj)+"px;'";
            html +=" id='"+id+"' name='"+name+"' class='webix_inp_textarea'>"+common._pattern(obj.value||"")+"</textarea>";

            return common.$renderInput(obj, html, id);
        },
        height:0,
        minHeight:60
    },
    $skin:function(){
        this.defaults.inputPadding = webix.skin.$active.inputPadding;
        this._inputSpacing = webix.skin.$active.inputSpacing;
    },
    _skipSubmit: true,
    $renderLabel: function(config, id){
        var labelAlign = (config.labelAlign||"left");
        var top = this._settings.labelPosition == "top";
        var labelTop =  top?"display:block;":("width: " + this._settings.labelWidth + "px;");
        var label = "";
        var labelHeight = top?this._labelTopHeight-2*this._borderWidth:( (webix.skin.$active.inputHeight||this._settings.aheight) - 2*this._settings.inputPadding);
        if (config.label)
            label = "<label style='"+labelTop+"text-align: " + labelAlign + ";' onclick='' for='"+id+"' class='webix_inp_"+(top?"top_":"")+"label "+(config.required?"webix_required":"")+"'>" + (config.label||"") + "</label>";
        return label;
    },
    //get input element
    getInputNode: function() {
        return this._dataobj.getElementsByTagName('textarea')[0];
    }
}, webix.ui.text);