0

在我的 AngularJS 应用程序中验证时,我无法显示自定义消息。

下面是我的代码:

<div class="row">
    <div class="input-field col s12">
       <input id="description" rows="3" class="materialize-textarea no-pad-bot no-pad-top" ng-model="Description" ng-required="isValidationRequired()" ng-minlength="5"></input>
        <span class="help-inline" ng-show="submitted && frm1.description.$error.required">Comments are required</span>

     </div>
 </div>

 <input type="submit" class="white-text waves-effect btn" value="Enter" ng-click="submitted=true" />

以上工作,但显示的消息是“请填写此字段”。这不是我指定的消息。我希望显示我自己的自定义消息。我找不到我的代码有什么问题。谁能帮我指出正确的方向。

4

2 回答 2

1

您的代码有一些问题。

  1. 不包括表格,我假设您只是没有在这篇文章中包含那段代码。

  2. 您需要指定输入的名称。所以在做frm1.description的时候,就知道description是什么了。

  3. 确保函数 isValidationRequired 返回 true

  4. 您需要在表单标签中包含 novalidate

在这里,我有一个工作示例

  <form novalidate name="frm1">
<div class="row">
<div class="input-field col s12">
   <input name="description" id="description" rows="3" class="materialize-textarea no-pad-bot no-pad-top" ng-model="Description" ng-required="isValidationRequired()" ng-minlength="5"></input>
    <div class="help-inline" ng-show="submitted && frm1.description.$error.required">Comments are required</div>

 </div>

http://jsfiddle.net/mlhuff12/Lvc0u55v/4503/

于 2016-05-25T15:35:19.897 回答
0

你收到一条消息,你做了代码?听起来像浏览器验证。检查您的声明并在其中添加“novalidate”。IE

<form novalidate>

也许这有帮助...

于 2016-05-25T12:48:54.090 回答