jsp頁面中的代碼執行載入順序介紹_JSP編程

來源:互聯網
上載者:User

1. java是在伺服器端啟動並執行代碼,jsp在伺服器的servlet裡運行,而javascript和html都是在瀏覽器端啟動並執行代碼。所以載入執行順序是是java>jsp>js。

2. js在jsp中的載入順序

頁面上的js代碼時html代碼的一部分,所以頁面載入的時候是由上而下載入。所以js載入的順序也就是頁面中<script>標籤出現的順序。<script>標籤裡面的或者是引入的外部js檔案的執行順序都是其語句出現的順序,其中js執行的過程也是頁面裝載的一部分。

2.1 在js指令碼中定義的全域變數和函數,都可以在後面的指令碼中調用。變數的調用,必須是前面已經聲明了的,否則變數返回的值是undefined。同一段指令碼中,函數定義可以出現在函數的調用後面;若函數的定義和調用在兩個指令碼段中,函數調用在函數定義之前就會報函數未定義錯誤。

2.2 js中出現ajax的非同步載入

由於ajax的非同步載入可能會導致語句的執行順序並不是按照語句的出現順序來執行。下面以我做任務時遇到的問題為例:

在頁面初始載入的時候需要向jsp發送請求來獲得該頁面所需的資料,在ajax成功函數中,對data的操作所需時間過長,就會導致在ajax函數外面的confirm與loadTree比data操作後面的語句先執行。最終在loadTree中使用data的值得時候就為空白,此時全域變數openTab_Id就為空白。

2.3控制js執行順序

可以使用setTimeout(function(),time);來使function消極式載入。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.