2012-11-21 35 views
12

我正在使用KendoGrid并进行内联批量编辑。只有少数几列是可编辑的。当点击选项卡时选中下一列,但它不是下一个可编辑列。有没有办法控制KendoGrid中的Tab键顺序?如何让标签跳过不可编辑的列?如何重新排列KendoGrid Tab顺序?

我加价:

<div id="employeeGoalsGrid"></div> 

我的javascript:

var goalsDataSource = new kendo.data.DataSource({ 
     transport: { 
      read: { 
       url: '/MVC/ResearcherPoints/GetEmployeeResearchers', 
       type: 'POST', 
       contentType: 'application/json' 
      }, 
      update: { 
       url: '/MVC/ResearcherPoints/UpdateEmployeeGoal', 
       type: 'POST', 
       contentType: 'application/json' 
       //dataType: "jsonp" 
      }, 
      parameterMap: function (options, type) { 
       debugger; 
       $.extend(options, { ID: options.id }); 
       return JSON.stringify(options); 
      } 
     }, 
     batch: false, 
     schema: { 
      model: { 
       id: 'ID', 
       fields: { 
        id: { editable: false, nullable: false }, 
        FirstName: { editable: false, nullable: true }, 
        LastName: { editable: false, nullable: true }, 
        Title: { editable: false, nullable: true }, 
        TeamName: { editable: false, nullable: true }, 
        PointsGoal: { type: "number", nullable: true, validation: { required: false, min: 1 } } 
       } 
      } 
     }, 
     sortable: true, 
     filterable: true, 
     columnMenu: true 
    }); 


    $('#employeeGoalsGrid').kendoGrid({ 
     dataSource: goalsDataSource, 
     navigatable: true, 
     sortable: true, 
     resizable: true, 
     toolbar: ["save", "cancel"], 
     columns: [ 
      { field: "FirstName", title: "First Name", width: 200}, 
      { field: "LastName", title: "Last Name", width: 200 }, 
      { field: "Title", title: "Title", width: 200 }, 
      { field: "TeamName", title: "Team", width: 200 }, 
      { field: "PointsGoal", title: "Goal", width: 200 }], 
     editable: true, 
     filterable: true, 
    }); 

任何建议,将不胜感激。

+0

是导航选择您的网格上的所有列虽然'可编辑'工作正常的问题? – OnaBai

+0

是的。当我点击标签时,焦点移动到下一列,但我想跳过不可编辑的列并跳到下一个可编辑列。 – Rodney

+0

你可以在[JSFiddle](http://jsfiddle.com)或[JSBin](http://jsbin.com)上发布示例吗?我很乐意提供帮助,但能够从互动样本开始,这将非常棒。 –

回答

0

你可以尝试改变从true网格选项editable属性"inline",让我知道是否能解决这个问题?我在this JSBin中创建了一个类似的场景,当我编辑一行时,Tab键顺序正常(OSX上的Chrome)。

+1

我在做批量编辑。我真的只有一个可编辑的列。当标签被击中时,我需要跳下一行。通过将其更改为内联。用户现在必须单击每行保存。 – Rodney

2

要跳过电池则需要使用tabindex="99999"

我创建了测试目的的jsfiddle:在

http://jsfiddle.net/danieltulp/kfG7y/

我认为你需要看看使用属性:{ “999999” 的tabindex}

{ field: "UnitsInStock", title: "Units In Stock", width: 110, attributes: { tabindex: "999999" } } 

但这似乎不起作用。任何人有更好的主意?

也许这是不可能的?

+1

+1感谢您将jsFiddle放在您的答案上。 -1因为没有给我答案。 +1,因为我很高兴我不是唯一有这个问题的人。这对我来说还没有解决。我很想为剑道解决这​​个问题。 (对不起,我只能给你+1) – Rodney

+0

它不是我的代码。只是来自剑道网站的演示。创建它来尝试为你解决它,但表面。感谢+1 –