2016-08-01 157 views
0

我有這個視圖,我稱之爲從外部html文件加載的模態。 由於此Modal的內容是在運行時生成的,所以我必須加載/重新加載我的JavaScript文件,對吧?加載運行時創建的引導引導程序模式

我已經創建了一個函數,重新加載我的JavaScript文件後,這種莫代爾加載,它工作正常。

我的問題:有沒有更好的方法來實現這個目標?

+0

你試過回調? – owaishanif786

+0

Modal os加載時的回調? 如果這就是你的意思,我仍然會重新加載我的Javascript文件,對吧? – ThalesMiguel

回答

1

當您包含外部html文件時,您是否嘗試加載JS文件?

在視圖:

<script>LoadJsAsync('/Scripts/modal-scriptName.js');</script> 

在JS文件中被引用:

function LoadJsAsync(jsPath) { 
    var head = document.getElementsByTagName('body')[0]; 
    var script = document.createElement('script'); 
    script.type = 'text/javascript'; 
    script.onreadystatechange = function() { 
     // if (this.readyState == 'complete') { callFunctionFromScript(); } 
    } 
    script.src = jsPath; 
    head.appendChild(script); 
} 
+0

這樣,我明白我會加載一個新的Javascript文件。在我的問題中,我已經在我的第一個HTML(調用Modal的HTML)中加載了一個Javascript,並且需要在Modal上加載相同的Javascript。 爲了更好地理解,jQuery是其中一個Javascript文件。 – ThalesMiguel

+1

如果我是你,我會有一個獨立的JS模式文件,並按照我所描述的方式加載它。重新加載現有的JS並不是一個好的做法,可能會有其他問題。加載一個特定於模態的JS動態只會影響該模態。 –

+0

但是我有一些在這個Modal的內部和外部使用的函數。如果我爲Modal創建另一個Javascript,我會複製我的代碼。 – ThalesMiguel