1

我正在使用w2uihttp://w2ui.com/)插件。

考虑这个例子:1

  1. 我想在单击添加按钮时在网格中出现一个空的可编辑行以添加新行?

  2. 我没有找到隐藏搜索框的配置,我该如何隐藏它?

  3. 如何将列设置为 id?目前它只是识别recid
4

2 回答 2

1
  1. 因为这是一个更大的问题。我会在下一篇文章中回答。

  2. 要隐藏搜索框,您可以设置 w2grid.show.toolbarSearch = false; 有关更多信息,请参阅http://w2ui.com/web/docs/w2grid.show

  3. recid 是必需的唯一字段。它一定要是。但是,您可能有任意数量的附加列,这些列不必可见,甚至在 columns 数组中也有相应的元素。如果服务器端将 id 作为唯一列返回,您可以添加事件侦听器 onLoad 并循环通过将 recid 设置为 id 的记录。我知道它不是那么漂亮,但它会完成工作。将服务器端更改为返回 reci 会使它变得漂亮。

于 2013-05-28T17:16:41.627 回答
1

以下是单击按钮时如何在网格中添加新记录的示例:

    <html>
    <head>
    <link rel="stylesheet" type="text/css" media="screen" href="../css/w2ui.css" /> 
    <script type="text/javascript" src="../js/jquery.min.js"></script>
    <script type="text/javascript" src="../js/w2ui.js"></script>
    <script>
    $(function () {
      $('#grid').w2grid({ 
        name: 'grid', 
        show: { 
          toolbar: true,
          footer: true,
          header: true,
          columnHeaders: true,
          lineNumbers: true,
          toolbarDelete: true,
          toolbarSave: true,
          toolbarAdd: true
        },
        columns: [        
          { field: 'recid', caption: 'ID', size: '50px', sortable: true, resizable: true, searchable: 'int' },
          { field: 'lname', caption: 'Last Name', size: '30%', sortable: true, resizable: true, searchable: true,
            editable: { type: 'text' }
          },
          { field: 'fname', caption: 'First Name', size: '30%', sortable: true, resizable: true, searchable: true,
            editable: { type: 'text' }
          },
        ],
        onAdd: function (target, data) {
          var recid = 1;
          if (this.records.length > 0) recid = (Math.max.apply(Math, this.find({}))) + 1;
          this.add({ recid: recid });
          $('#grid_grid_edit_'+ (this.records.length - 1) +'_1').focus();
        },
        onSave: function (target, data) {
          var obj = this;
          console.log(data);
          data.onComplete = function () {
            for (var r in data.changed) {
              obj.get(data.changed[r].recid).editable = false;
            }
            obj.refresh();
          }
        }
      });
    });
    </script>
    </head>
    <body>
      <div id="grid" style="width: 100%; height: 500px;"></div>
    </body>
    </html>

于 2013-05-29T01:53:28.473 回答