1

当我将变量的初始值设置为“0”时,NumericTextBox 字段无法显示该值。

代码:

<div ng-app="app">
    <div ng-controller="MyCtrl">
        <input type="text" ng-model="value" kendo-numeric-text-box>
            <br>
        <input type="text" ng-model="value">
    </div>
</div>

JS:

angular.module('app', ['kendo.directives']);
function MyCtrl($scope) {
    $scope.value=0;
};

jsfiddle中,您可以看到简单的文本字段显示零值,但 kendo NumericTextBox 为空。但是,如果您在简单文本字段中再次键入零,那么在剑道字段中也会出现零。我认为这是一个错误,如何解决这个问题?

4

1 回答 1

0

好吧,如果它是一个错误,你可以要求 angular-kendo 的维护者修复它,或者你可以自己修复它。我认为这是一个相对简单的修复,因为链接函数不区分模型值 0 和undefined. 因此,您需要确保仅null在值实际null或未定义时才调用小部件的 value 方法:

if (typeof ngModel.$viewValue !== 'undefined') {
    widget.value(ngModel.$viewValue);
} else {
    widget.value(null);
}

这是一个带有固定版本的演示(请注意,链接到 angular-kendo 的一个分支)。

于 2014-01-11T17:08:24.117 回答