0

オートコンプリートは正常に動作していますが、自動提案ボックスが 1 文字で表示されており、入力が 3 つ以上の場合にのみ自動提案ボックスを表示するように変更したいと考えています。

「minLength」オプションを挿入しようとしましたが、効果がありません。

6 行目を次のように変更しようとしました。

.autocomplete(conf.opts, minLength: 3 || {});


しかし、成功しませんでした。


これが私のJSファイルです:

var myEditor;
// AutoComplete FieldType
$.fn.dataTable.Editor.fieldTypes.autoComplete = $.extend(true, {}, $.fn.dataTable.Editor.models.fieldType, {
    "create": function (conf) {
        conf._input = $('<input type="text" id="' + conf.id + '">')
        .autocomplete(conf.opts || {});

        return conf._input[0];
    },

    "get": function (conf) {
        return conf._input.val();
    },

    "set": function (conf, val) {
        conf._input.val(val);
    },

    "enable": function (conf) {
        conf._input.autocomplete('enable');
    },

    "disable": function (conf) {
        conf._input.autocomplete('disable');
    },

    // Non-standard Editor method - custom to this plug-in
    "node": function (conf) {
        return conf._input;
    }
});


$(document).ready(function () {
    myEditor = new $.fn.dataTable.Editor({
        "ajaxUrl": "./php/pTreinamentos.php",
        "domTable": "#example",
        "fields": [{
            "label": "Tema",
            "name": "tema",
            "type": "autoComplete",
            "opts": {
            "source": ['banana']
            }
        }
        ]
    });


    // DataTable
    var oTable = $('#example').dataTable({
        "sDom": "<'row-fluid'<'span6'T><'span6'f>r>t<'row-fluid'<'span6'i><'span6'p>>",
        "sAjaxSource": "./php/pTreinamentos.php",
        "bFilter": true,
        "bAutoWidth": false,
        "iDisplayLength": 20,
        "aoColumns": [{
            "mData": "tema"
            }
        ],
        "oTableTools": {
            "sSwfPath": "../../TableTools/media/swf/copy_csv_xls_pdf.swf",
            "sRowSelect": "single",
            "sPaginationType": "bootstrap",
            "aButtons": [{
                "sExtends": "editor_create",
                "editor": myEditor
                }, {
                "sExtends": "editor_edit",
                "editor": myEditor
                }, {
                "sExtends": "editor_remove",
                "editor": myEditor
                }
            ]
        }
    });

});
4

1 に答える 1

1

解決策は、フィールド構造内にオプションを追加することでした。

"fields": [{
    "label": "Data",
    "name": "data",
    "type": "autoComplete",
    "opts": {
    "source": ['banana'],
    "minLength": 3
    }
于 2013-04-21T18:42:54.450 に答える