更改Editable Form裏的快捷鍵

經常聽到用戶在抱怨OE的回車不好用。原來國產的很多軟件裏,總是把回車當成TAB用。唉。迎合用戶,改。
打開:
\addons\web\static\src\js\view_list_editable.js

找到(大約line169):


on_row_keyup: function (e) {
            var self = this;
......

動手。
首先要支持這個:用戶在一個輸入框回車,跳轉到本行的下一個輸入框。要考慮輸入框的readonly,invisible...
思路:先數本行總共有多少個可以輸入的input, 然後向後select一個。


on_row_keyup: function (e) {
            var self = this;
            
            switch (e.which) {
            case KEY_RETURN:
                inputs = self.edition_form.$element.find('input:visible:not(disabled):not([readonly])')
                idx = $.inArray(e.target, inputs);
                if(idx < inputs.length-1){
                    $('#'+inputs[idx+1].id).select();
                    return;
                }
                
                this.save_row().then(function (result) {
                    if (result.created) {
                        self.new_record();
                        return;
                    }

......


當然,如果到了本行最後一個輸入框了,那就執行系統的快捷鍵,保存本行,跳到下一行吧。

打完收工。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章