Making a jQuery Tab Selected based on errors present -
i working tab in web application show selected if there error within it, because have form spans 2 tabs. if there error user can not see error message inside tabs-2 , don't know fix. have following code:
html:
<div id="tabs"> <ul> <li><a id="tab-1" href="#tabs-1">tabs 1</a></li> <li><a id="tab-2" href="#tabs-2" ">tabs 2</a></li> </ul> <div style="display:block;" id="tabs-1" class="tab-content" name="content"> <span>content here</span> </div> <div style="display:block;" id="tabs-2" class="tab-content" name="content"> <span id="eterror" class="error-template"></span> <span class="error-message">must enter @ least 1 more</span> </div> </div> js:
<script> var $j = jquery.noconflict(); $j(function() { $j( '#tabs' ).tabs(); $j('#tabs > div').each(function(i) { if($j(this).find('#eterror.error-message').length < 0) $j('#tabs').tabs('select', i); }); }); </script> any appreciated. thanks!
from understand, want set tab active if there's error message present. check if that's wanted or let me know if there's else i'm missing here.
var $j = jquery.noconflict(); var $tabs = $j( '#tabs' ).tabs(); $j("button").click(function(){ var $errorspan = $j("span").filter(function(index){ if($j(this).hasclass("error-message")) return $j(this); }); var errortabindex = $j(".tab-content").index($errorspan.closest(".tab-content")); console.log(errortabindex); // jquery < 1.10 $tabs.tabs({ selected: errortabindex }); //for jquery >= 1.10 $tabs.tabs( "option", "active", errortabindex); }); i've added handler check error-div on button tap. might want set form submit or something.
update
what done is, filter applied on span.error-message. if found returns span. can find tab having error message , set active.
Comments
Post a Comment