0

xVal を jquery.validate プラグインと組み合わせて使用​​していますが、特定のインスタンスで検証メッセージを 2 回投稿しているというわずかな問題に遭遇しました。このバグは、エラー メッセージの配置に巧妙な jQuery を使用することでかなり簡単に修正できると思います。

ul にテキストが含まれる li が既に含まれているかどうかを確認する方法を見つけようとしています。

errorPlacement: function(error, element) {
     $("ul.errors:not(:contains(" + error + "))").append(error);
}

上記のようなものがうまくいくかもしれないと思っていましたが、そのような運はありません。error.toString() も機能しません。

どんな助けでも大歓迎です。

4

3 に答える 3

1

:hasセレクターを見てください:

$("ul:has(li:contains('" + error + "'))")

上記のセレクターは、テキストを含むUL要素を持つ要素を選択します。LIerror

于 2009-08-17T07:15:20.443 に答える
0

ここにそのプラグインがないため、エラー テキストを取得するための適切なプロパティが何かわかりませんが、Firebugconsole.logを使用してofを実行し、errorそれが何であるかを確認できます。

また、文字列を引用符で囲む必要があります。

$("ul.errors:not(:contains('" + errorString + "'))")

...そして、エラー メッセージ内の一重引用符をエスケープすることを忘れないでください!

于 2009-08-17T07:06:30.897 に答える
0

errorあなたのコードには何がありますか?
最初は string として参照し:contains(" + error + ")ますが、次に element- として参照します.append(error);
これが要素の場合は、 を使用してそのテキストを取得し$(error).text()、ul でテキストを検索してみてください。

于 2009-08-17T07:28:41.570 に答える