2016-10-10 106 views
3

這是一個簡單的實用,但我不知道我做錯了什麼。
我在我的外部JavaScript文件,下面的代碼:從外部javascript文件調用html函數

function myname(){ 
    document.write("Monique"); 
} 

function welcomeW(name){ 
    document.write("Welcome " + name + "!"); 
} 

function welcomeR(name){ 
    return "Welcome " name "!"; 
} 

我加入這個<script>標籤鏈接到我的html文件:

<script src="script.js" type="text/javascript"></script> 

我嘗試使用調用HTML功能:

<script> myname(); </script> 
<script> welcomeW(Monique); </script> 
<script> welcomeR(Monique); </script> 

當我在html中編寫函數它工作,但在外部文件中沒有任何反應。

+0

在外部文件?在哪兒?錯誤在哪裏? – k102

+0

您有許多錯誤...所有這些錯誤都將在瀏覽器的開發人員工具的控制檯中報告。如果您使用過諸如JS Hint之類的工具,它們也會被報告。 **閱讀錯誤信息**。 – Quentin

+0

您應該在welcomeW('Monique')中使用引號「」或「'作爲字符串 – Supersharp

回答

-1

請確保您將腳本函數調用放在腳本src標記之後。

+0

問題中的代碼存在很多問題,但沒有任何跡象表明腳本元素的順序就是其中之一。 – Quentin

+0

「當我在html中寫入函數時它工作但在外部文件中沒有任何反應」 – sam

-1

你忘了返回的+。你可以在你的腳本中調用這些函數。如果你正確地鏈接它,那麼它應該可以工作。

如果你不知道。返回不打印/寫任何東西。它只是返回。 如果你想寫它,你只需要這樣做。

var welcomeR = return "Welcome " + name + "!"; and document.write(welcomeR); 

<script> 
 
function myname(){ 
 
    document.write("Monique"); 
 
} 
 

 
function welcomeW(name){ 
 
    document.write("<br/>" +"Welcome " + name + "!" + "<br/>"); 
 
} 
 

 
function welcomeR(name){ 
 
    return "Welcome " + name + "!"; 
 
} 
 
myname(); 
 
welcomeW("Monique"); 
 
welcomeR("Monique"); 
 
</script>

0

Monique , there is only one issue in your code, please use single quote (i.e 'Monique') or double quote ("Monique") when you are passing argument, i thing you are getting "Uncaught ReferenceError: Monique is not defined" error message.

<script> myname(); </script> 
<script> welcomeW("Monique"); </script> 
<script> welcomeR("Monique"); </script> 

Or use this.

<script> myname(); </script> 
<script> welcomeW('Monique'); </script> 
<script> welcomeR('Monique'); </script> 
相關問題