關於ligerui grid 行內編輯 combobox 只能選擇的問題


這個貌似是天然的不支持,修復方案,在ligerGridOrd.js中添加一行代碼,如下,跟了一下午的源碼,發現在這里的時候,options中只保留了combobox中的一部分屬性,所以可能combobox中的很多東西都用不了了。這段代碼大約在271行的位置,如果你沒有引用ligerGridOrd.js,那就去ligerui.all.js找找看,應該也會有。

$.ligerDefaults.Grid.editors['select'] =
     $.ligerDefaults.Grid.editors['combobox'] =
     {
         create: function (container, editParm)
         {
             var column = editParm.column;
             var input = $("<input type='text'/>");
             container.append(input);
             var options = {
                 data: column.editor.data,
                 slide: false,
                 valueField: column.editor.valueField || column.editor.valueColumnName,
                 textField: column.editor.textField || column.editor.displayColumnName,
                 autocomplete: column.autocomplete//修復combobox不支持手動輸入的問題
             };
             var ext = column.editor.p || column.editor.ext;
             if (ext)
             {
                 var tmp = typeof (ext) == 'function' ?
                 ext(editParm.record, editParm.rowindex, editParm.value, column) : ext;
                 $.extend(options, tmp);
             }
             input.ligerComboBox(options);
             return input;
         },
         getValue: function (input, editParm)
         {
             return input.liger('option', 'value');
         },
         setValue: function (input, value, editParm)
         {
             input.liger('option', 'value', value);
         },
         resize: function (input, width, height, editParm)
         {
             input.liger('option', 'width', width);
             input.liger('option', 'height', height);
         },
         destroy: function (input, editParm)
         {
             input.liger('destroy');
         }
     };

ps:就這一行代碼,找了我兩天,太痛苦了。。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM