Мне нужно добавить пользовательское сообщение об ошибке в ячейку, когда она находится в редактируемом режиме, в основном мне просто нужно добавить сообщение в редактируемый HTML-шаблон, как показано ниже.
<a href=\'#\' data-toggle=\'tooltip\' data-placement=\'top\' title=\'error!\' ng-show=\'!inputForm.$valid\'>errMsg - {{customMsg}}</a>
я только что привязал customMsg к глобальной области только для целей тестирования, но, похоже, он все еще не появляется. образец plunker добавлен здесь, было бы здорово, если бы вы могли сказать мне, что я делаю неправильно здесь
Спасибо
Ответ 1 · рейтинг 1 · MilitelloVinx
Возможно, вы захотите взглянуть на этот ответ
https://stackoverflow.com/a/28127498/1585304
Когда вы работаете с сеткой пользовательского интерфейса, вы фактически работаете в изолированной области.
Это означает, что вы не можете получить доступ к родительской области, просто введя имя переменной в свой html.
Чтобы получить доступ к вашей переменной customMsg, вам нужно обратиться к родительской области с помощью grid.appScope.
Ваше определение столбца должно выглядеть примерно так.
{
field: 'company',
displayName: 'Company',
enableColumnMenu: false,
editableCellTemplate: "<div><form name=\"inputForm\">
<input type=\"INPUT_TYPE\" ng-class=\"'colt' + col.uid\"
ui-grid-editor ng-model=\"MODEL_COL_FIELD\" minlength=3
maxlength=10 required><a href=\'#\' data-toggle=\'tooltip\'
data-placement=\'top\' title=\'error!\'
ng-show=\'!inputForm.$valid\'>errMsg - {{grid.appScope.customMsg}}
</a></form></div>"
}
Единственная проблема в том, что очень трудно увидеть сообщение, так как форма почти полностью скрыта строкой.
Надеюсь это поможет.