2010-06-02 4 views
0

je vais avoir des problèmes avec Jquery et jqModal, et j'espère que vous êtes en mesure d'aider, depuis que je suis aux prises pendant des heures ..JQM est pas une fonction

comportant un élément seul bouton avec un onclick l'action en cours d'exécution ma méthode « test » (ci-dessous):

$('#picture_form').jqm({ajax: '/test.php'});

$('#picture_form').jqmShow();

Cela va charger le contenu ajax de test.php dans mon élément div picture_form, montré en utilisant jqModal comme son supposé! Bien que lorsque je ferme cette fenêtre et que je clique à nouveau sur le bouton j'obtiens l'erreur:

$ ("# picture_form") .jqm n'est pas une fonction. En tant que solution, j'ai essayé d'utiliser la fonction de déclenchement JqModal, ce qui me permet d'ouvrir et de fermer les fenêtres JqModal autant de fois que je le souhaite. Malheureusement, je ne peux appeler le 'trigger' qu'en utilisant l'environnement de test, dans mon code de production je dois ouvrir la fenêtre JqModal en utilisant une fonction.

Quelqu'un a-t-il une idée de la raison pour laquelle ce 'bug' apparaît lors de l'appel de l'ouverture lors de l'utilisation une fonction?

Merci à l'avance

Répondre

0

Si ma mémoire est bonne, vous ne sont censés appeler la méthode jqm initialisation une fois. Essayez d'initialiser le modal dans un événement document.ready, puis dans votre onclick il suffit d'appeler la fonction jqmShow. Si cela ne fonctionne toujours pas, pourriez-vous poster un peu plus du code environnant? Bonne chance!

+0

Merci pour votre réponse. J'ai déjà essayé d'initialiser la méthode Jqm dans un document prêt. Bien que cela ne semble pas faire de différence. Voici un extrait de mon code: http://pastie.org/990167 Ce que je vais finir par être, espérons-capeable de lie la fonction JQM à mon bouton personnalisé dans tinymce. – Kristian

+0

il semble que vous appelez la méthode d'initialisation 'jqm' _twice_? Essayez de les combiner en une seule fois. Je ne suis pas sûr si c'est le problème réel, mais comme je l'ai dit, je crois que vous êtes seulement supposé l'appeler une fois ... – Funka

+0

Salut Funka, Sur ma page ajax j'étais l'appeler à nouveau, ce qui a rendu la fonction bug en quelque sorte. – Kristian

1

Ceci devrait le résoudre. Ajoutez-le au point où vous voulez l'afficher:

$('#ex2').jqm({ajax: action,target: 'div.jq_content', trigger: false, modal:true }).jqmShow(); 
Questions connexes