2010-11-20 16 views
0

は、例:提出オンのjQuery UIのタブは、フォームのバリデーション

<form> 
    <div id="tabs"> 
    <ul> 
       <li>Link to fragment 1</li> 
       <li>Link to fragment 2</li> 
       <li>Link to fragment 3</span></a></li> 
       <li>Link to fragment 4</li> 
       <li>Link to fragment 5</li> 
    </ul> 

<!-- Form Fields Step 1 --> 
<div id="fragment-1" class="ui-tabs-panel"> 
    Tab 1 Form Fields 
</div>   

<!-- Form Fields Step 2 --> 
<div id="fragment-2" class="ui-tabs-panel ui-tabs-hide"> 
    Tab 2 Form Fields 
</div> 

<!-- Form Fields Step 3 --> 
<div id="fragment-3" class="ui-tabs-panel ui-tabs-hide"> 
    Tab 3 Form Fields 
</div> 
<!-- Form Fields Step 4 --> 
<div id="fragment-4" class="ui-tabs-panel ui-tabs-hide"> 
    Tab 2 Form Fields 
</div> 
<!-- Form Fields Step 5 --> 
<div id="fragment-5" class="ui-tabs-panel ui-tabs-hide"> 
    Form Summary</div> 
</div> 
</form> 

、私は最初のエラーが発生した特定のタブにユーザーをとり、検証をしたいと思います。どんな助けでも大歓迎です。 -K

+1

あなたは検証のどのような種類を使用していますか?サーバー側またはクライアント側、またはその両方?サーバー側の検証を使用している場合、検証が失敗したときにどのようなデータが戻ってきますか? –

+0

@Nolanはこの質問の回答を得ましたか?答えがあれば – Techy

答えて

0

JavaScriptを使用してエラーを含むタブのタブをクリックすると、怠惰な/簡単な方法です。このような何か...

擬似コード:

$('#submit').click(function(){ 
    [validation here] 
    on validate{ 
     $('input.error').closest('.tab_class').attr('id'); 
     var tab_num = get the tab number out of the id with substr 
     $('#tab_nav_button_'+tab_num).click(); [javascript clicks the tab nav, showing the correct tab] 
} 

} 
+0

なぜ両方のシミュレーションをシミュレートするのですか?タブウィジェットにはタブをプログラムで変更する方法があります。 – Soviut

+0

@ソビエト - その場合はさらに真っ直ぐに進むべきです! – Haroldo