Pregunta

Estoy intentando seleccionar una sección de pestaña particular de una página web, al hacer clic en un enlace en otra página. Se me sugirió usar la función location.hash para seleccionar ese elemento de anclaje en particular de la pestaña y agregar la propiedad hash en el atributo href de la primera página web.

Pero el código no funciona para mí. Obtengo la página completa, en lugar de la pestaña particular seleccionada. ¿Alguien me puede ayudar?

Aquí está el código. Este es el enlace en la primera página web. Quiero que se seleccione la pestaña Enviado de la segunda página web. Así que agregué la identificación de esa pestaña, #enviado a la URL.

<a id="formStatus<?php echo $status;?>" class="code_link" href="/FormBuilder/main/viewAllMyForms#submitted"><?php echo $status;?></a>

Este es el código de la segunda página, donde verifico si location.hash es igual a enviado.

if(location.hash=="submitted") {
       $("#submitted").trigger("click");
}

$('#submitted , #formStatusSubmitted').click({
 <?php foreach($myForms as $form):
    if($form['Form']['status']=="Incompleted"){ ?>
        $('.fm_myformsample_container'+<?php echo $form['Form']['id'];?>).hide();
<?php }

   else{?>
        $('.fm_myformsample_container'+<?php echo $form['Form']['id'];?>).show();
  <?php }

  endforeach;?>

  $('#sort_by').find(".selected").removeClass();
  $('#submitted').addClass("selected");
});
¿Fue útil?

Solución 3

Encontré la solución a mi problema. Acabo de agregar un # al Id en esa condición if, es decir,

if(location.hash=="#submitted"){
       $("#submitted").trigger("click");
}

y funciona ahora ... Si hago clic en ese enlace en particular, me redireccionan a esa sección de pestaña en particular.

Otros consejos

pruebe window.location.hash o document.location.hash

Me parece que disparas el clic () antes de configurar el controlador para hacer clic. Intente mover $ (" # enviado "). Trigger (" haga clic en "); a la parte inferior.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top