簡體   English   中英

腳本文件加載到局部視圖上導致錯誤

[英]Script file loaded on partial view causing error

我有一個mvc.net應用程序,在某些頁面上,我通過Ajax加載了部分視圖,並將已經渲染的部分視圖返回到腳本中。

一切看起來不錯,但我現在面臨一個問題。 在我的部分視圖中,有一個以常規方式加載的Java腳本文件。 之后,我正在使用該腳本定義的類

<script src="profile.js" />
<script >
  profile.init();
<script />

當我的Ajax調用返回了返回的頁面時,根據profile.ja的加載時間,未調用初始化函數說明該配置文件未定義。

如果我在本地運行該腳本,則腳本加載速度足夠快,並且一切都會執行。 但是,在從Cloudfront加載腳本的測試環境中運行它會花費更多時間,並且該函數之前已經執行。

有沒有一種方法,只有在確定已下載腳本后才可以執行該腳本。 Document.ready不起作用,因為Ajax正在加載部分視圖

重要的是要說,由於我們代碼中有些瘋狂的事情,我不能僅將其簡單地放在父頁面或_layout上,將不勝感激

謝謝!

您可以在布局或主視圖上引用profile.js,這樣一來,您將知道在部分視圖中調用概要文件時將定義該概要文件。

創建一個布局頁面並呈現該頁面中的js文件,請記住在要加載腳本的其他每個頁面中使用布局。

您可以通過在script標簽的onload中調用profile.init()函數輕松地完成此操作。 希望這可以幫助。

<script onload="profile.init()" src="profile.js"></script>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM