0

次のコードのフォームのエラーメッセージとして、タイトル属性を無視できることを知っています。

$("#myForm").validate({
  ignoreTitle:true
});

ただし、これが単一のフィールドで実行できるかどうかを知りたいのですが。私が尋ねている理由は、フィールドの1つに、文字列メッセージだけでなくHTMLを含むメッセージを返してもらいたいからです。

title属性内に条件付きでHTMLを配置する方法はありますか?

4

2 に答える 2

0

私の場合、title検証の前に属性を削除し、エラーが発生した場合は属性を追加し直す方が簡単かもしれないことに気付きました。

だから、私が行ったJavascriptの一般的なアイデアは次のとおりです。

//BEFORE validation, remove title attribute:
var password=$('#myForm).find('input[type=password]');
var title=password.attr('title');
password.removeAttr('title');

//If there is an error, add back the title attribute 
password.attr('title', title);

HTML は次のとおりです。

<input id="password" title='Password must be at least 8 characters, 1 number, 1 upper and 1 lower case letters'  placeholder='At least 8 chars, 1 num, 1 upper'
name="password" type="password" />
<div class='error'>
<ul id='passwordError' style='display:none'>
    <li>Password must be at least:</li>
    <li> 8 characters </li>
    <li> 1 upper, 1 lower case letter</li>
    <li> 1 number</li>  
</ul>               
</div>
于 2013-01-31T19:19:01.160 に答える