1
$('form').find('input[pattern],textarea[pattern]').each(function(){
if(!$(this).val().match($(this).prop('pattern'))){
$(this).addClass('error');
}
});
<textarea name=... required pattern=^.{10,255}$></textarea>
基本的に、値がパターンと一致しない場合、クラス(エラー)が追加されます。しかし、1〜9文字しか入力しなくても、クラスはテキストエリアに追加されません。なぜこのjQuery HTML5フォールバックが機能しないのですか?
HTML5でそれが有効な属性ではありませんので、それは、 'データpattern'、ない' pattern'を使用することが適切です。 'data- *'はです。 –
パターンはHTML5 http://dev.w3.org/html5/spec/common-input-element-attributes.html#the-pattern-attribute – numbers1311407
あなたは 'pattern'属性値を引用符で囲むのを忘れています... –