jquery検証プラグインを使用してフォームを検証しています。私はフォームをタブに分割して、次のボタンをクリックするだけで次のタブに移動することができます。その次のボタンのonclickイベントを回避すると、現在のタブにエラーがないことを確認したいと思います。jqueryは入力のためにクラスごとに入力を確認します
タブはform_groupクラスでマークされています。入力が、私が試してみて、見つけるために多くの方法を試してみましたが、「有効」または「エラー」
のいずれかのクラス指定されonfocusoutイベントによって検証されると
<div id="tab-1" class="form_group">
<div>
<label for="name">Your Name:</label>
<input id="ins_name" type="text" name="name" maxlength="40" />
</div>
<a class="next-tab mover" rel="2" href="#">Next Step »</a>
</div>
:デフォルトのタブのHTMLは次のようになりますその次のタブボタンをクリックすると、現在のタブにクラス「エラー」の入力があるかどうかを確認することができませんでした。
これは私の最新の試みです。
$('.next-tab, .prev-tab').click(function() {
if ($(this).find('input.error')) {
alert('error present');
return false;
}
$tabs.tabs('select', $(this).attr("rel"));
return false;
});
divに入力エラーがあるかどうかを教えてもらえますか?私の問題の1つは、$ thisが.next-tab要素を使用していることです。私は運がない最も近い "form_group"クラスを選択しようとしました。
アレックス、申し訳ありません:
.preventDefault()
は、一般的に、イベントのデフォルトの動作を防止するためreturn false
よりも好ましいこと注:とにかく
、私はあなたがこのような何かをしたいと考えていますより良い質問をしないという言い訳しかありません。私の最後の試みでアラートが全く実行されていませんでした。私はあなたの助けに感謝します。このメソッドは、すべてのタブにform_groupクラスがあるので、どのタブに関係なくエラーをキャッチします。それはうまくいきましたが、jquery UIタブのselect関数にチェックを移動しても、エラーを修正せずに別のタブに移動することはできません。 – grantk