簡體   English   中英

為什么在外部文件中使用內聯代碼不起作用,但在使用函數時起作用

[英]why when using inline code in external file doesn't work, but when using function work

我知道問題的標題可能無法理解,但我會解釋一下。

每個人都知道我們可以使用以下任何一種方式。

例子(1)

document.getElementById('idofelement').onsubmit = function() {
   alert('Go ahead');
   return false;
}

例子(2)

function DisplayMsg(){
   alert('Go ahead');
   return false;
}

// and in HTML
<form action="file.php" method="post" onsubmit="return DisplayMsg();">

我的問題(1):
兩種方式或兩個示例有什么區別

我的問題(2):
為什么example (1)在外部JavaScript文件中不起作用,但是在目標HTML代碼附近插入example (1)時與我一起工作。 example (2)可以在任何位置工作,無論是在外部文件中還是在目標HTML代碼附近。

加載文檔后,應該始終調用方法getElementById。 因此,正如@JanDvorak所建議的那樣,您應該使用jQuery將其包裝在$.ready()中。 如果不是,請改用window.onload = function()

順便說一句:函數定義后不要忘記分號,IE容易受此語法的影響

暫無
暫無

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

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