11480 sujets

JavaScript, DOM et API Web HTML5

Avez vous eu à résoudre ce pb avec boostrap 3 ?

tu as des tab (des onglets) avec un bouton de formulaire à l'intérieur au niveau du tab3.
J'ai mis une ancre #tab3 au niveau de l'url du form pour revenir sur la tab3 et associé à un javascript

code

 <ul class="nav nav-tabs" role="tablist"  id="myTab">
    <li class="active"><a href="#tab1" role="tab" data-toggle="tab"><?php echo TAB_GENERAL; ?></a></li>
    <li><a href="#tab2" role="tab" data-toggle="tab"><?php echo TAB_ORDERS_DETAILS; ?></a></li>
    <li><a href="#tab3" role="tab" data-toggle="tab"><?php echo TAB_STATUT; ?></a></li>
</ul>

  <div class="tabsClicShopping">
    <div class="tab-content">
      <div class="tab-pane active" id="tab1">
      <div>
      <div class="tab-pane" id="tab2">
      <div>
      <div class="tab-pane" id="tab3">
            <?php echo osc_draw_form('status', FILENAME_ORDERS, osc_get_all_get_params(array('action')) . 'action=update_order#tab3'); ?>
            </form>
      <div>
    </div>
 </div>




le js accompagné est celui ci. Il devrait permettre revenir sur le tab3 uniquement activé (mais il manque le haut de page) et donc l'objectif est d'avoir aussi le header avec .
la fonction scrollTop() devrait permettre de remonter en haut de page mais cela ne fonctionne pas.


$(document).ready(function () {
  if (location.hash !== '') {
    $('a[href="' + location.hash + '"]').tab('show');
  }

  $("a[data-toggle='tab']").on("shown.bs.tab", function (e) {
    var hash = $(e.target).prop("href");
    if (hash.substr(0,1) == "#") {
      var position = $(window).scrollTop();
      location.replace("#" + hash.substr(1));
      $(window).scrollTop(position);
    }
  });
});


As vous une idée ?