GureWork > espacios de Coworking topalekuak :)
Template:@neilw > ShowForm
    Tabla de contenidos
    No hay encabezados
    var inputs = $fields ?? [ ];
    var button = $button ?? 'Ok';
    var channel = $publish ?? 'default';
    
    <form>
        <table id=(@form)>
            foreach (var input in inputs where !input.hidden) {
                var type = input.type ? (string.tolower(input.type)) : "text"; // default to 'text'
                <tr>
                    <td> input.label ?? string.nbsp </td>;
                    <td>
                        if (type == "text")
                            <input type="text" name=(input.field) value=(input.default ?? input.value) size=(input.size ?? 16)/>;
                        else if (type == "select")
                            <select name=(input.field)>
                                foreach (var opt in input.value)
                                    <option value=(opt) selected=(__index==input.default ? "selected" : nil)> opt </option>;
                            </select>;
                        else if (type == "radio") {
                            foreach (var opt in input.value) {
                                if (__index && input.oneperline) <br />;
                                <input type="radio" name=(input.field) value=(opt) checked=(__index==input.default ? "checked" : nil)>
                                    " "..opt.." "
                                </input>;
                            }
                        }
                        else if (type == "checkbox")
                            <input type="checkbox" name=(input.field) value=(input.value) checked=(input.default ? "checked" : nil)/>;
                        else
                            <span style="color:red"> "ERROR: unknown input type '"..type.."'" </span>;
                    </td>
                </tr>
            }
            <tr>
                <td>
                    foreach(var input in inputs where input.hidden) {
                        <input type="hidden" name=(input.field) value=(input.value)/>
                    }
                </td>
                if (button!="-") //@himikel #add 2010-07-04
                {
                <td align="right">               
                    <input type="button" value=(button ?? 'Ok') ctor="when($this.click) {
                        var m = { };
                        Deki.$('#' + {{@form}}).find('input,select').each(function() {
                            var type = $(this).attr('type');
                            if (!((type == 'radio' || type == 'checkbox') && !$(this).attr('checked')) &&
                                Deki.hasValue(this.name)) m[this.name] = Deki.$(this).val(); 
                        });
                        Deki.publish({{channel}}, m);
                    }"/>
                </td>
               }
            </tr>
        </table>
    </form>
    Powered by MindTouch Core (Expired)