未捕获的ReferenceError:未定义parseURL

时间:2011-07-27 21:06:04

标签: javascript referenceerror

我已经在我的文件头部的javascript中定义了一个名为parseURL的函数,并且我有一个按钮设置,以便在单击它时,它应该调用所述函数。但是,出于某种原因,我的调试器告诉我没有定义parseURL。确切的错误是“Uncaught 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>

它似乎应该是一个简单的解决方案,但我尝试了很多东西,但似乎没有任何工作。任何帮助表示赞赏。

3 个答案:

答案 0 :(得分:2)

移动它:

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

到这里:

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

答案 1 :(得分:1)

你真的在JavaScript中有这些哈希吗?如果是这样,他们会彻底杀死你的剧本。

如果您想在JavaScript中发表评论,可以使用单行注释:

// This is a comment.

或多行评论:

/* This is
a comment */

答案 2 :(得分:0)

我可以在js中看到一些问题,其中一个可能导致错误:

  1. 你不应该写,但总是使用。有些浏览器非常愚蠢。
  2. 您可以在脚本开头调用document.getElementById(“link”)。当该行执行时,文档中没有元素具有id链接...文档中根本没有元素。一个天真的解决方案是在页面末尾移动所有脚本,而正式正确的解决方案是使用onload事件。
  3. Javascript不支持带#的评论。它支持//用于单行,/ * .. * /用于多行。