Javascript 更改显示属性将页面滚动到它';s上衣

Javascript 更改显示属性将页面滚动到它';s上衣,javascript,html,css,Javascript,Html,Css,我在使用Javascript更改对象显示属性时遇到问题 我使用php从mysql数据库中的数据填充一个表,并为每一行生成一个DIV,其中包含display:none属性,我有一个简单的JavaScript函数来显示/隐藏DIV。 以下是div的css: display:none; /*initially menu item is hidden*/ position: absolute; /*absolute positioning to float*/ background-color:#fff

我在使用Javascript更改对象显示属性时遇到问题

我使用
php
mysql
数据库中的数据填充一个表,并为每一行生成一个
DIV
,其中包含
display:none
属性,我有一个简单的JavaScript函数来显示/隐藏
DIV
。 以下是
div
css

display:none; /*initially menu item is hidden*/
position: absolute; /*absolute positioning to float*/
background-color:#fff;
width:230px;
min-height:120px;
right:60px;
border:5px solid #ccc;
text-align:right;
direction:rtl;
padding:10px;
border-radius: 10px 10px 10px 10px; 
-moz-border-radius: 10px 10px 10px 10px; 
-webkit-border-radius: 10px 10px 10px 10px; 
这是javascript:

function showfield (a) {
    document.getElementById(a).style.display = "block";  
}
function hidefield (a) {
    document.getElementById(a).style.display = "none";  
}
该函数起作用,div显示在它们必须显示的位置,但问题是:

当我调用JavaScript函数show时,它会显示div,但页面会滚动到其顶部,为了查看打开的div,我应该向下滚动,因为我的页面是一个报告页面,它可能是一个很长的页面,这根本不是一个好事情

我不明白为什么会发生这种情况,有没有办法防止这种自动滚动?

试试这个

HTMl

 <a style="text-decoration:none; color:black;" href="#<?php echo("a".$cntr); ?>" onclick="return showfield(<?php echo($cntr); ?>)"><?php echo($cntr); ?></a>

请尝试下面的代码它为我工作

<script>
 function showfield(a)
  {
    document.getElementById(a).style.display = "block";  
  }
   function hidefield(a)
  {
      alert(a);
    document.getElementById(a).style.display = "none";  
  }
</script>
<a href="javascript:void(0)" onclick="showfield('myid')">show</a>
<a href="javascript:void(0)" onclick="hidefield('myid');">hide</a>

<div id="myid">test content goes here</div>

功能展示区(a)
{
document.getElementById(a.style.display=“block”;
}
函数隐藏字段(a)
{
警报(a);
document.getElementById(a.style.display=“无”;
}
测试内容在这里

让我猜猜。。。。您在
标记中调用了您的
showfield
函数。。。比如…
。。是吗???嗨,你能在这里写html代码吗?@bipen是的,我像你一样在标记中调用了它say@Praveenkalal非常感谢,但它没有帮助,解决方案是:href=“#javascript:void(0)”我之前使用href=“#”转到标签,因为我找不到路,这根本不必要
<script>
 function showfield(a)
  {
    document.getElementById(a).style.display = "block";  
  }
   function hidefield(a)
  {
      alert(a);
    document.getElementById(a).style.display = "none";  
  }
</script>
<a href="javascript:void(0)" onclick="showfield('myid')">show</a>
<a href="javascript:void(0)" onclick="hidefield('myid');">hide</a>

<div id="myid">test content goes here</div>