单击链接时如何在同一页面上显示框

时间:2016-04-05 17:56:05

标签: javascript php

我正在制作基于php的网络应用程序。我想在使用java脚本点击链接时在同一页面上显示一个框。我怎么能实现这个? 我试过以下代码

<script>
function a()
{
    document.getElementsById("a").style.visibility="visible";
}
</script>

<a style="position:absolute;left:84%;top:32%;font-size:13px " href="" onclick="a()">
    Forgot Password?
</a>

<div id="a" style="position:absolute;left:30%;top:10%;width:40%;height:40%;background-color:lightgray;visibility:hidden">
</div>

3 个答案:

答案 0 :(得分:1)

您需要修复getElementsById不是复数,应该是getElementById

要在点击时停止重新加载页面,请设置href="javascript:a()"

<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css">

<script>
function a()
{
    document.getElementById("a").style.visibility="visible";
}
function close_a()
{
    document.getElementById("a").style.visibility="hidden";
}
</script>

<a style="position:absolute;left:84%;top:32%;font-size:13px " href="javascript:a()">
    Forgot Password?
</a>

<div id="a" style="position:absolute;left:30%;top:10%;width:40%;height:40%;background-color:lightgray;visibility:hidden">
<a href="javascript:close_a()"><i class="fa fa-times-circle"></i> Close Me</a>
</div>

添加了关闭和font awesome

的功能

答案 1 :(得分:1)

文件的方法是错误的。

应为getElementById,您可以在Windows上使用Google Chrome DEV工具( Ctrl + shift + i <在Mac上使用kbd>⌘ + 选项 + i 来调试代码。

答案 2 :(得分:0)

将您的代码更改为此,将显示该框:

<script>
function a()
{
    document.getElementById("a").style.display="block";
    return false;
}
</script>

<a style="position:absolute;left:84%;top:32%;font-size:13px " href="#" onclick="return a()">
    Forgot Password?
</a>

<div id="a" style="position:absolute;left:30%;top:10%;width:40%;height:40%;background-color:lightgray;display: none">
</div>

您的代码中存在错误。 getElementById是正确的,并且您的<a>链接会刷新页面,正确的方法是避免刷新,将onclick="a();"更改为onclick="return a();",以便javascript查找函数返回,并在函数,我们返回false,因此保持页面相同,避免刷新。

此外,您可以在框中添加内容:

<script>
function a()
{

    document.getElementById("a").style.display="block";
    document.getElementById("a").innerHTML="<b>your other contents inside the box</b>";
    return false;
}
</script>

<a style="position:absolute;left:84%;top:32%;font-size:13px " href="#" onclick="return a();">
    Forgot Password?
</a>

<div id="a" style="position:absolute;left:30%;top:10%;width:40%;height:40%;background-color:lightgray;display: none">
</div>