为什么这个Javascript函数不起作用?

时间:2012-02-02 03:40:48

标签: javascript

我希望能够点击链接并显示一个表单。理想情况下顺利使用延迟?到目前为止,我点击链接,没有任何反应。

我的Javascript

<script type="text/javascript">
    function showForm() {
        document.getElementById('showme').style.display = "block";
    }
    </script>

我的HTML

<a class="non_link" href="" alt="start a new post" onmouseclick="showForm();">
   Start A New Post
</a>
<form action="#" id="showme" method="post">

我的CSS

#showme {
    font-size: 0.5em;
    color: #000;
    font-weight: normal;
    margin-top: 20px;
    display: none;
}

取出#符号仍然无法正常工作

4 个答案:

答案 0 :(得分:3)

#不属于id:

document.getElementById('showme')

此外,这应该是onclick你正在使用的。另外,尝试将href设置为类似href="javascript:void(0);"的内容(其他返回假值的表达式也应该起作用)。

答案 1 :(得分:2)

请勿在{{1​​}}

中使用#登录
getElementById

你想要的是id,而不是选择器。见here

答案 2 :(得分:1)

document.getElementById()不需要#。这是jquery standard与您定义css ID的方式一致

见MDN: https://developer.mozilla.org/en/DOM/document.getElementById

答案 3 :(得分:0)

您的代码正在使用以下测试HTML文件:

<html>
<head>
<style type="text/css">
#showme {
    font-size: 0.5em;
    color: #000;
    font-weight: normal;
    margin-top: 20px;
    display: none;
}
</style>
<script type="text/javascript">
function showForm() {      
       document.getElementById('showme').style.display='block';    
    }
</script>
</head>
<body>
<a class="non_link" href="#" alt="start a new post" onclick="showForm()">
   Start A New Post
</a>
<form  id="showme" method="">
Content of the Form<br/>
Content of the Form
</form>
</body>
</html>