2013-08-09 2 views
0

J'ai actuellement une navigation déroulante qui ouvre une fenêtre modale lightbox.Comment désactiver une lightbox de l'ouverture dans Drupal en utilisant le module lightbox2

Je ne souhaite pas ouvrir la fenêtre s'il y a une option sans URL sélectionnée qui est la première option par défaut.

J'ai essayé un certain nombre de techniques telles que: - renvoyant false sur l'événement onsubmit du formulaire. - Tenter de lier un événement click au lien goURL a href en utilisant jQuery qui serait alors 1) appeler event.preventDefault ou 2) arrêter les événements de propagation. - codage d'un événement onclick sur le lien goURL a href.

est Ci-dessous le code html

<h3>Request a <span>Quote</span></h3> 
<form action="#"> 
    <div class="select"> 
     <select id="URL" name="URL" onchange="$('#goLink').attr('href', $('#URL').val());"> 
      <option value="">- Choose a Link -</option> 
      <option value="/node/1/lightbox2">Link 1</option> 
      <option value="/node/2/lightbox2">Link 2</option> 
      <option value="/node/3/lightbox2">Link 3</option> 
      <option value="/node/4/lightbox2">Link 4</option> 
      <option class="last" value="/node/5/lightbox2">Link 5</option> 
     </select> 
    </div> 
</form> 
<a href="#" id="goLink" class="go" rel="lightframe">GO</a> 

Répondre

1

Vous devez supprimer le rel attribut si vous avez besoin d'un lien simple, sans effet lightbox. L'attribut href ne l'affecte pas.

Voici un exemple d'un code jQuery (pas nécessaire le parfait, mais comme un exemple):

$("#url").change(function(){ 
    var selected = $('url :selected'), // Get the selected option 
     selectedVal = selected.val(); // Get the selected option value 

    if (selectedValue == "") { 
     $('#goLink').removeAttr('rel'); // Remove the rel if the value is empty 
    } else { 
     $("#goLink").attr('href',selectedVal).attr('rel','lightframe'); // Add rel=lightframe attribute and the href 
    } 
}); 
Questions connexes