2010-12-14 98 views
0

我一直試圖讓這個工作多年,現在嘗試加載的SO問題/答案,但沒有geting很遠。從AJAX文件運行Javascript

我想我最初有兩個問題,一個希望我已經解決。

我一直在使用JotForm(使用原型的簡單表單創建器)。我擁有的是一個facebook風格的菜單(AjaxFlagMenu),它創建了一個vertex 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");

任何幫助都會很棒!謝謝!

回答

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!

+0

謝謝!沒有改變任何東西,但看起來好像它是朝着正確方向邁出的一步。如果外部html文件的腳本應該放在'$(document).ready(function()'或者它應該在''標籤內嗎? – lethalMango 2010-12-14 14:10:04

+0

嘗試在加載的html中執行一些簡單的操作..如,看看它是否證明了..究竟是什麼在AJAX上加載的html代碼片段看起來像?我主要感興趣的是javascript ... – Catalin 2010-12-14 14:19:28

+0

現在我得到了但是現在還沒有出現,我實際上只需要調用'JotForm.init();'。但這是否也意味着我需要將JotForm js文件包含在外部文件本身中,還是可以將它們包含在html加載到的主菜單頁面中? – lethalMango 2010-12-14 14:34:18

0

改爲使用JotForm Iframe代碼。這是你如何得到它。打開上JotForm表單生成表單:工具欄上

  1. 打開「設置&共享」選項卡,
  2. 點擊「分享型」
  3. 點擊「高級選項」
  4. 點擊「的iFrame代碼「並將表單代碼複製到您的網站。
+0

儘管如此,據我所見,我沒有選擇表單發佈到的位置。它也依賴於JotForm服務器在線。如果他們失敗了,我們網站的很大一部分也是如此。 – lethalMango 2010-12-14 14:14:32