2011-07-27 124 views
0

我在我的文件頭中定義了一個名爲parseURL的函數,並且我有一個按鈕,因此當它被單擊時,它應該調用所述函數。但是,由於某種原因,我的調試器告訴我parseURL沒有定義。確切的錯誤是「未捕獲的ReferenceError:未定義的parseURL」未捕獲的ReferenceError:未定義parseURL

<HTML xmlns="http://www.w3.org/1999/xhtml"> 
<HEAD> 
    <link rel="stylesheet" href="../css/style.css" type="text/css" /> 
    <TITLE> 
    Pic Grabber (javascript) 
    </TITLE> 
<script type="text/javascript" src="linkedURL.js" /> 

<script type="text/javascript"> 
var Page = {}; 
Page.currentURL = null; 
Page.link = document.getElementById("link"); 

/* 
################################### 
# The function that "doesn't exist" 
################################### 
*/ 

function parseURL(){ 
    Page.url = document.getElementById("url").value; 

    if(!checkValidURL(Page.url)){ 
     alert("Must Enter a valid URL"); 
    } 

    Page.link.innerHTML = Page.url; 

    return true; 
} 

function checkValidURL(url){ 
    var request = false; 
    if (window.XMLHttpRequest) { 
     request = new XMLHttpRequest; 
    } 
    else if (window.ActiveXObject) { 
     request = new ActiveXObject("Microsoft.XMLHttp"); 
    } 
    else{ 
     alert("FAIL"); 
    } 

    if (request) { 
     request.open("GET", url); 
     if (request.status == 200) { 
      return true; 
     } 
    } 

    return false; 
} 

</script> 
</HEAD> 
<BODY> 
    <div class="wrap"> 
     <h1><a href="#">My Database</a></h1> 
     <ul id="menu"> 
      <li><a href="../index.php">Home</a></li> 
      <li><a href="../upload.php">Upload</a></li> 
      <li><a href="#">Advanced Search</a></li> 
      <li><a href="#">My Profile</a></li> 
     </ul> 
     <div class="clear"></div> 
     <div id="left"> 
      <a href="#" id="link"></a> 
     </div> 
     <div id="right"> 
      <div class="box"> 
       <form id="input"> 
       <p>URL:</p><br/> 
       <input type="text" id="url" /><br /> 

          ################################# 
          # This is where the error appears 
          ################################# 

       <input type="button" id="getButton" value="Get Pics" onclick="parseURL()" /> 
       <input type="button" id="back" value="<< Back" onclick="back()" disabled="true"/> 
       <input type="button" id="next" value="Next >>" onclick="next()" disabled="true"/> 
       </form> 
      </div> 
     </div> 
    </div> 

</BODY> 

</HTML> 

現在看來似乎應該是一個簡單的辦法,我已經嘗試了一堆東西,雖然並沒有什麼似乎工作。任何幫助表示讚賞。

回答

2

移動這樣的:

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

到這裏:

<script type="text/javascript" src="linkedURL.js"> </script> 
</BODY> 
+1

工作正常,我唯一需要做的就是將它從。感謝您的快速響應! –

+0

哦,是啊!我錯過了。沒問題 – Joe

1

你確實有在你的JavaScript的哈希?如果是這樣,他們會完全殺死你的腳本。

如果你想在JavaScript中發表評論,你可以使用單行註釋:

// This is a comment. 

或多行註釋:

/* This is 
a comment */ 
+0

Nah我只是在發表評論時扔了這些東西。對不起,我可以看到這會讓人困惑。 –

+0

在這種情況下,您可以發佈您的實際代碼,或者至少有一個鏈接嗎?它會幫助我們幫助你 –

0

我可以看到幾個問題,即JS,一個其中可能導致錯誤:

  1. 你不應該寫,但總是使用。有些瀏覽器非常愚蠢。
  2. 您可以在腳本的開頭直接調用document.getElementById(「link」)。當該行執行時,文檔中沒有具有id鏈接的元素......文檔中根本沒有元素。一個天真的解決方案是在頁面末尾移動所有腳本,而正式的解決方案是使用onload事件。
  3. Javascript不支持#的評論。它支持//對於單行,和/ * .. * /對於多行。
相關問題