2016-07-26 37 views
0

我有一个情况,如果我编辑Cell1,UI电网将运行验证程序Cell1,但我也想运行的验证程序Cell2。 如果Cell2值不正确的话,我想在uiGridValidateService.setValidator()设置验证消息将焦点设置Cell2如何设置在特定小区中的Focus在UI电网

我可以使用下面的语句Cell1编辑运行Cell2验证,但不能够凸显Cell2

代码:

gridApi.grid.validate.runValidators(rowEntity, colDef, rowEntity['Cell2'], NaN, $scope.gridApi.grid); 

我怎么可以把重点放在UI网格特定的细胞?

回答

0

我解决它通过下面,希望这将有助于有人用同样的要求,

而不是试图将焦点设置上的错误领域,我刚添加下面的代码上afterCellEdit()。

if (!rowEntity['$$errors' + fieldName]) { 
     rowEntity['$$errors' + fieldName] = {}; 
    } 
    rowEntity['$$errors' + fieldName][validatorName] = true; 
    rowEntity['$$invalid' + fieldName] = true; 

其中我的fieldName是我想要在每个cellEdit上验证的目标字段。所以在我的情况下,即使我正在编辑Cell1的值,我将通过fieldName ='Cell2',它将得到验证,我将作为'validatorName'传递给我的验证器。如果它不是合适的值,那么它会突出显示cell2为红色并显示其工具提示。

希望它能帮助别人。让我知道如果有任何问题。

相关问题