0

我一直试图让它工作很长时间,尝试了大量的 SO 问题/答案,但没有走得太远。

我想我最初有两个问题,希望我已经解决了一个。

我一直在使用 JotForm(使用原型的简单表单创建器)。我拥有的是一个 facebook 样式菜单 ( AjaxFlagMenu ),它创建了一个 verticle ajax 样式菜单,该菜单从外部文件中提取 html 片段(在我的例子中,它们都有一个 Jotform 表单)。

目前在包含菜单的“主”页面顶部,我有:

<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>

然后我需要做的是,当单击菜单项并从其他页面加载 HTML 时,我需要运行JotForm.init();以启用 JotForm 验证功能。但是,我什至似乎无法alert("Hello World");在被调用的页面上工作。

任何帮助都会很棒!谢谢!

4

2 回答 2

1

在 AjaxFlagMenu.js 中,在执行 ajax 的行:

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

尝试dataType: "html"像这样添加:

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

这将评估您通过 AJAX 加载的 javascript。

你会在这里找到更多信息:http: //api.jquery.com/jQuery.ajax/#options


稍后编辑

问题是 AjaxFlagMenu 不评估来自 ajax 响应的 javascript!

于 2010-12-14T12:48:56.083 回答
0

请改用 JotForm Iframe 代码。这是您如何获得它的方法。在 JotForm 表单生成器上打开您的表单:

  1. 打开工具栏上的“设置和共享”选项卡,
  2. 点击“分享表格”
  3. 点击“高级选项”
  4. 单击“iFrame 代码”并将表单代码复制到您的站点。
于 2010-12-14T13:58:39.160 回答