FineUI 官方论坛

标题: FineUI模板列自动下一行文本框代码 [打印本页]

作者: shiningrise    时间: 2013-12-10 11:27
标题: FineUI模板列自动下一行文本框代码
  1. <script type="text/javascript">// <![CDATA[
  2.         var gridClientID = '<%= GridList.ClientID %>';

  3.         function registerSelectEvent() {
  4.             var grid = X(gridClientID);
  5.             // 防止重复注册客户端事件
  6.             if (grid.el.getAttribute('data-event-click-registered')) {
  7.                 return;
  8.             }
  9.             grid.el.set({ 'data-event-click-registered': true });

  10.             grid.el.select('.x-grid-tpl input').on('click', function (evt, el) {
  11.                 el.select();
  12.             });
  13.         }

  14.         function registerEnterEvent() {
  15.             var grid = X(gridClientID);
  16.             // 防止重复注册客户端事件
  17.             if (grid.el.getAttribute('data-event-keydown-registered')) {
  18.                 return;
  19.             }
  20.             grid.el.set({ 'data-event-keydown-registered': true });

  21.             grid.el.select('.x-grid-tpl input').on("keydown", function (evt, el) {
  22.                 if (evt.getKey() == evt.ENTER) {
  23.                     var currRow = Ext.get(el).parent('.x-grid3-row');
  24.                     var currCell = Ext.get(el);
  25.                     var currIndex = currRow.query('.x-grid-tpl input').indexOf(currCell.dom);
  26.                     var nextRow = Ext.get(el).parent('.x-grid3-row').next();
  27.                     if (nextRow) {
  28.                         nextRow.query('.x-grid-tpl input')[currIndex].select();
  29.                     }
  30.                 }
  31.             });
  32.         }

  33.         function onReady() {
  34.             var grid = X(gridClientID);

  35.             grid.on('viewready', function () {
  36.                 registerSelectEvent();

  37.                 registerEnterEvent();
  38.             });
  39.         }

  40.         function onAjaxReady() {
  41.             registerSelectEvent();

  42.             registerEnterEvent();
  43.         }

  44. // ]]></script>
复制代码



作者: shiningrise    时间: 2013-12-10 11:28
扩展这个demo  
http://fineui.com/demo/grid/grid_edit.aspx





欢迎光临 FineUI 官方论坛 (https://fineui.com/BBS/) Powered by Discuz! X3.4