alert()不显示href值

时间:2017-09-30 12:18:46

标签: javascript

大家好,我想要一些帮助,因为我是JS的新手 我希望这段代码能够显示元素“aaa”的href警告,但没有任何反应。你能解释一下我做错了什么吗? 感谢

<html>
<body>

<script type="text/javascript">
    function myFunction(){
        var xxx = document.getElementById("aaa").href;
        alert(xxx);
    }
    myFunction();
</script>

<a href="Moody'sKMVproject-studentsample2.doc" id="aaa">file word</a>
</body>
</html>

请删除此问题,因为它是重复的 Why does jQuery or a DOM method such as getElementById not find the element?

我很抱歉发布..我是JS的新手,我不知道首先要搜索什么

4 个答案:

答案 0 :(得分:1)

问题是您的脚本是在呈现标记之前执行的。将脚本标记放在标记之后,它应该可以工作。

答案 1 :(得分:1)

脚本在DOM准备好之前执行,因此没有标识为aaa的元素。 您可以在

中添加脚本
window.load=function(){
function myFunction(){
        var xxx = document.getElementById("aaa").href;
        alert(xxx);
    }
    myFunction();
}

您还可以在关闭正文标记附近定义脚本标记。在这种情况下,DOM已准备就绪,它将能够找到id

的元素
<body>
<a href="Moody'sKMVproject-studentsample2.doc" id="aaa">file word</a>

<script type="text/javascript">
    function myFunction(){
        var xxx = document.getElementById("aaa").href;
        alert(xxx);
    }
    myFunction();
</script>
</body>

答案 2 :(得分:1)

首先,您应该使用Developer Console查找错误(右键单击页面,然后检查元素)。

无论如何,问题似乎是你的JavaScript在你制作锚(a)元素之前完成了。

<html>
<body>
<a href="Moody'sKMVproject-studentsample2.doc" id="aaa">file word</a>
<script type="text/javascript">
    function myFunction(){
    var xxx = document.getElementById("aaa").href;
    alert(xxx);
}
myFunction();
</script>
</body>

这应该有用。

答案 3 :(得分:-1)

就像帕特里克所说的那样,将标签移动后,我认为href的值是你要找的

var xxx = document.getElementById("aaa").getAttribute("href");