6

如果我有一个输入文本字段,其值在表单加载时超过了 ng-maxlength(输入仍然是 $pristine,而不是 $dirty),则输入字段会误导性地为空白,而 ng-model 仍然有数据。

http://plnkr.co/edit/uUaC9tgHEozBkUReRXBk?p=preview

我希望输入显示与模态相同的数据,为什么它显示为空白?

这是一个错误吗?还是预期的行为?

4

2 回答 2

3

这是因为在超过 ng-maxlength 标准后,angular js 将输入视为未定义。您可以将 html maxlength 属性与 ng-maxlength 一起使用。Html maxlength 将仅将输入值限制为该限制,并且 ng-model 将仅存储有限长度的输入值。您可以使用 ng-maxlength 在超出限制时显示错误。

于 2014-02-18T05:20:30.373 回答
2

添加ng-model-options="{ allowInvalid: true }"到 html 元素为我解决了这个问题。

于 2019-07-03T19:50:05.217 回答