2016-10-03 11 views
1

私はjQuery validationを使用するフォームを持っており、ユーザーが「続行」をクリックすると、ページの上部にエラーが表示されます。動的エラー検証リストの番号付けを動的に追加/削除しますか?

既存のエラーごとにエラーが数値リストに存在する必要があるため、動的に生成する必要があります。ですから、例えば代わり​​の

  1. [空] [空]
  2. ことが

    1. だろう

    [空]あなたが

  3. 生まれた月を入力します。あなたが生まれた月を入力してください

これを行う方法はありますか?

$("ul.error-menu li").each(function(i, el) { 
    $(this).children('a').prepend("<span>" + (i+1) + "</span>"); 
}); 

<ul class="error-message-container error-menu"> 
    <li><a href="#firstName"><label class="error" for="firstName" generated="true"></label></a></li> 
    <li><a href="#lastName"><label class="error" for="lastName" generated="true"></label></a></li> 
    <li><a href="#dobMonth"><label class="error" for="dobMonth" generated="true"></label></a></li> 
</ul> 

正しい方向への助けがあれば助かります。

フィドル:https://jsfiddle.net/DTcHh/25812/

答えて

1

だけdecimallist-style-typeを追加します。

.error-message-container.error-menu li { 
    list-style-type: decimal; 
} 

そしていや、この部分を削除します。

$("ul.error-menu li").each(function(i, el) { 
    $(this).children('a').prepend("<span>" + (i+1) + "</span>"); 
}); 

フィドルを:https://jsfiddle.net/pr5o1qzo/

+0

ありがとうございましたが、それは私が望んでいた結果を達成できませんでした。私は私の最初の例を反映するためにリストが必要です - ページにいくつかの潜在的な検証チェックがあります。リストには、実際に存在するエラーのみが空白スペースなしで数値順に反映されます。 – bunnycode

+0

@bunnycodeそれでは、私のコードは何をしていますか?同じように表示されますか? –

+0

コードに最初は空の数値リストが表示されます。ユーザーがフィールドに入力せずに「続行」をクリックすると、リストには完全に入力されます。たとえば、ユーザーが1つのフィールドを除くすべてのフィールドを塗りつぶした場合、エラーリストには空白/空白があります。あなたのコードは空のギャップを保持しています。私が望むのは、エラーだけのリストと数字順のエラーです。エラーがなければ、リストは表示されません。 1つのエラーがある場合は、[1. [対応するエラー]]と表示されます。 2つのエラーがある場合、2つのエラーが表示されます。等 – bunnycode

関連する問題