MDLのmdl-textfield__errorを使ってバリデーションチェックしたら表示されない
MaterialDesignLite(以下、MDL)とangularJsを使って書いてます。MDLは1.04、angularは1.4.5です。
<form name="myForm" ng-submit="onsubmit()" novalidate>
<div class="mdl-textfield mdl-js-textfield mdl-textfield--floating-label">
<label class="mdl-textfield__label" for="passwd">パスワード:</label><br />
<input class="mdl-textfield__input" id="passwd" name="passwd" type="password" ng-model="user.passwd" required ng-minlength="8" />
<span class="mdl-textfield__error mdl-color-text--black" ng-show="myForm.passwd.$error.required">
パスワードは必須です。</span>
<span class="mdl-textfield__error mdl-color-text--cyan" ng-show="myForm.passwd.$error.minlength">
パスワードを8桁以上で設定してください。</span>
となっています。このclassに使っている[mdl-textfield__error]を指定していると、パスワードを3桁入れるとほんらないならばパスワードを8桁以上で設定してくださいが表示されるはずなのに何も表示されません。しかしバリデーションはチェックされています。(図1)
ところが、図2のように何も入れないと表示されます。
そのため、MDLが悪さしているのかと思い、CSSを外しました。(Classを抜きました)
そうするとちゃんと表示されます。
ちなみに、すべての設定が動くか調べると、
何も入っていない状態でも動きますし、8桁入れると表示されません。
ということで、MDLを使ってDOMを更新したいのですが、classにerrorメッセージ表示時に2個目以降は何を入れればよいのかわからないので、おしえて頂ければと思います。宜しくお願いします。