Question

J'ai essayé d'obtenir ce au travail depuis des siècles maintenant, les charges essayé de SO / question des réponses mais pas geting très loin.

Je crois que j'avais à l'origine 2 questions, un qui espère que je l'ai résolu.

Je me sers JotForm (le créateur de forme facile que les utilisations prototype). Ce que j'est un menu de style facebook ( AjaxFlagMenu ) qui crée un menu de style verticle ajax qui tractions dans les extraits HTML à partir de fichiers externes (qui dans mon cas ont tous une forme JotForm là-bas).

A l'heure actuelle en haut de la page « principale » qui contient le menu, je:

<script src="http://cdn.jquerytools.org/1.2.5/jquery.tools.min.js"></script>
<script type="text/javascript" src="/js/jquery.corner.js"></script>
<script type="text/javascript" src="/js/jquery.flagmenu.js"></script>
<script type="text/javascript">
jQuery.noConflict();
jQuery(document).ready(function($){
    var Menu = $("#_Menu").AjaxFlagMenu({
    Caption:'Manage Profile',
    CaptionClass:'CaptionClass',
    onOutClass:'onOutClass',
    onOverClass:'onOverClass',
    onClickClass:'onClickClass',
    hscOutClass:'hscOutClass',
    hscClickClass:'hscClickClass',
    Loading_gif:'/images/loading.gif',
    ajaxContent:'ajaxContent'
    });
    //Basic
    Menu.add({
        Title:'Basic Info',
        onOutIcon:'/images/icon-vcard-c.png',
        onClickIcon:'/images/icon-vcard-d.png',
        HtmlSatusContent:'',
        url:'/instructor/pages/mp-basic.php',
        data:''
    });
    //Profile Picture
    Menu.add({
        Title:'Profile Picture',
        onOutIcon:'/images/icon-camera-c.png',
        onClickIcon:'/images/icon-camera-d.png',
        HtmlSatusContent:'',
        url:'/instructor/pages/mp-photo.php',
        data:''
    });
    //Pricing and Offers
    Menu.add({
        Title:'Pricing and Offers',
        onOutIcon:'/images/icon-pound-c.png',
        onClickIcon:'/images/icon-pound-d.png',
        HtmlSatusContent:'',
        url:'/instructor/pages/mp-pricing.php',
        data:''
    });
    //Services
    Menu.add({
        Title:'Services',
        onOutIcon:'/images/icon-services-c.png',
        onClickIcon:'/images/icon-services-d.png',
        HtmlSatusContent:'',
        url:'/instructor/pages/mp-services.php',
        data:''
    });
    //Bio and Additional
    Menu.add({
        Title:'Bio and Additional',
        onOutIcon:'/images/icon-bio-c.png',
        onClickIcon:'/images/icon-bio-d.png',
        HtmlSatusContent:'',
        url:'/instructor/pages/mp-bio.php',
        data:''
    });
    $("#_td").corner("4px");
});
</script>
<script src="/js/jotform/prototype.js?v=3.1.92" type="text/javascript"></script>
<script src="/js/jotform/protoplus.js?v=3.1.92" type="text/javascript"></script>
<script src="/js/jotform/protoplus-ui.js?v=3.1.92" type="text/javascript"></script>
<script src="/js/jotform/jotform.js?v=3.1.92" type="text/javascript"></script>
<script src="/js/jotform/calendarview.js?v=3.1.92" type="text/javascript"></script>

Ce que je dois faire alors, est lorsque l'élément de menu est cliqué et charge le HTML de l'autre page, je dois exécuter JotForm.init(); pour activer les fonctions de validation de JotForm. Cependant, je ne semble même pas être en mesure de alert("Hello World"); au travail sur la page qui est appelé.

Toute aide serait génial! Merci!

Était-ce utile?

La solution

Dans les AjaxFlagMenu.js, à la ligne Ajax est exécutée:

//Ajax
var _XMLHTTPRequest = $.ajax({type: "GET",url:_url,data:_data });

Essayez d'ajouter dataType: "html" comme ceci:

//Ajax
var _XMLHTTPRequest = $.ajax({type: "GET",url:_url,data:_data,dataType: "html" });

Cette wil évaluer le javascript vous chargez via AJAX.

Vous trouverez plus d'informations ici: http://api.jquery.com/jQuery. ajax / # Options


PLUS TARD EDIT

Le problème est que le AjaxFlagMenu n'évalue le javascript de la réponse ajax!

Autres conseils

Utilisez le code JotForm Iframe à la place. Voici comment vous pouvez l'obtenir. Ouvrez votre formulaire sur le formulaire JotForm Constructeur:

  1. Ouvrir l'onglet "Configuration et partage" à la barre d'outils,
  2. Cliquez sur "Partager le formulaire"
  3. Cliquez sur "Options avancées"
  4. Cliquez sur « Code iFrame » et copiez le code du formulaire sur votre site.
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top