2010-11-20 8 views
1

J'essaie d'obtenir une boîte « SimpleDialog » pour ouvrir via un lien en utilisant le code suivant:boîte jQuery.simpleDialog ne pas montrer

<script language="javascript" type="text/javascript"> 
jQuery(document).ready(function() { 
    jQuery('.simpledialog').simpleDialog(); 
}); 

jQuery('#sdHc2').simpleDialog({ 
    showCloseLabel: false 
}); 

}); 
</script> 

Voici le lien que je utilise:

<a href="#" id="sdHc2" class="medium" rel="simpleDialog2">request a call back</a> 

Et la div Je veux afficher:

<div style="display:none;" id="simpleDialog2"> 
<h3>Form content</h3> 
<p>This is where the form will go.</p> 
<a href="#" class="close">close</p></a> 
</div> 

J'ai appelé le script jquery.simpledialog.js dans la tête ainsi que la jque ry.simpledialog.css mais pour une raison quelconque, la boîte de dialogue n'apparaît pas.

J'ai un script show/hide en cours d'exécution sur la page qui fonctionne bien alors qu'est-ce qui me manque pour faire apparaître la boîte de dialogue?

Répondre

1

Vous avez un jeu supplémentaire de balises }) là-dedans, ce qui signifie que vous êtes) et obtenir l'erreur et b) jQuery('#sdHc2') ne fonctionne pas sur document.ready, il devrait ressembler à ceci:

jQuery(document).ready(function() { 
    jQuery('.simpledialog').simpleDialog(); 
    jQuery('#sdHc2').simpleDialog({ 
     showCloseLabel: false 
    }); 
}); 

je simplifier l'ensemble d'une classe commune sur les liens si, comme ceci:

<a href="#" class="medium dialogLink" rel="simpleDialog2">request a call back</a> 

ensuite les lier à la fois au lieu de per- id comme ceci:

jQuery(document).ready(function() { 
    jQuery('.dialogLink').simpleDialog({ 
     showCloseLabel: false 
    }); 
}); 

De cette façon, vous ne devez pas changer votre code du tout comme vous ajoutez des liens, il suffit d'ajouter autant de paires lien/dialogue dans la page que vous voulez.

+0

Merci Nick, je suis allé dans la voie de simplifier le codage car je me rends compte que j'essayais de compliquer les choses! :) –

+0

Sur une note, j'ai un formulaire dans ma div maintenant et je veux fermer la superposition lorsque le formulaire est envoyé (en utilisant un script d'envoi externe) –

Questions connexes