HTML中按钮的隐藏属性 [英] Hidden property of a button in HTML

查看:120
本文介绍了HTML中按钮的隐藏属性的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我试图在单击一次按钮时显示三个按钮。在单击按钮之前,所有三个按钮均被隐藏。我设置了hidden属性,并且在单击按钮时也调用了一个函数。问题是,当我加载页面时,所有按钮都是可见的。在添加CSS之前,它运行良好。我不明白问题出在哪里。

I am trying to show three buttons on one button click. Before a button click all three buttons are hidden. I set the hidden property and I am also calling a function on a button click. The problem is that when I load the page all buttons are visible. It was working perfectly before I added CSS. I don't understand where the problem is.

这是我的代码:

    .buttons a, .buttons button{
    display:block;
    float:left;
    margin:0 7px 0 0;
    background-color:#f5f5f5;
    border:1px solid #dedede;
    border-top:1px solid #eee;
    border-left:1px solid #eee;

    font-family:"Lucida Grande", Tahoma, Arial, Verdana, sans-serif;
    font-size:12px;
    line-height:130%;
    text-decoration:none;
    font-weight:bold;
    color:#565656;
    cursor:pointer;
    padding:5px 10px 6px 7px; /* Links */
    }
    .buttons button{
    width:auto;
    overflow:visible;
    padding:4px 10px 3px 7px; /* IE6 */
    }
    .buttons button[type]{
    padding:5px 10px 5px 7px; /* Firefox */
    line-height:17px; /* Safari */
    }
    *:first-child+html button[type]{
        padding:4px 10px 3px 7px; /* IE7 */
    }
    .buttons button img, .buttons a img{
    margin:0 3px -3px 0 !important;
    padding:0;
    border:none;
    width:16px;
    height:16px;
    }

    /* STANDARD */

    button:hover, .buttons a:hover{
    background-color:#dff4ff;
    border:1px solid #c2e1ef;
    color:#336699;
    }
    .buttons a:active{
    background-color:#6299c5;
    border:1px solid #6299c5;
    color:#fff;
    }

    /* POSITIVE */

    button.positive, .buttons a.positive{
    color:#529214;
    }
    .buttons a.positive:hover, button.positive:hover{
    background-color:#E6EFC2;
    border:1px solid #C6D880;
    color:#529214;
    }
    .buttons a.positive:active{
    background-color:#529214;
    border:1px solid #529214;
    color:#fff;
    }

    /* NEGATIVE */

    .buttons a.negative, button.negative{
    color:#d12f19;
    }
    .buttons a.negative:hover, button.negative:hover{
    background:#fbe3e4;
    border:1px solid #fbc2c4;
    color:#d12f19;
    }
    .buttons a.negative:active{
    background-color:#d12f19;
    border:1px solid #d12f19;
    color:#fff;
    }

    /* REGULAR */

    button.regular, .buttons a.regular{
    color:#336699;
    }
    .buttons a.regular:hover, button.regular:hover{
    background-color:#dff4ff;
    border:1px solid #c2e1ef;
    color:#336699;
    }
    .buttons a.regular:active{
    background-color:#6299c5;
    border:1px solid #6299c5;
    color:#fff;
    }

<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
      <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
      <link rel="STYLESHEET" type="text/css" href="dba_style/buttons.css" />
      <title>Untitled Document</title> 
      
      <script type="text/javascript">
      function change(){
    document.getElementById("save").hidden = "";
    document.getElementById("change").hidden = "";
    document.getElementById("cancel").hidden = "";

      }
      </script>

    </head>
   
    <body>
      <form name="form1" method="post" action="">
      <div class="buttons">

          <button class="regular" name="edit" id="edit" onclick="change();">
              <img src="dba_images/textfield_key.png" alt=""/>
              Edit
          </button>

          <button type="submit" class="positive" name="save" id="save" hidden="hidden">
              <img src="dba_images/apply2.png" alt=""/>
              Save
          </button>

          <button class="regular" name="change" hidden="hidden" id="change">
              <img src="dba_images/textfield_key.png" alt=""/>
              change
          </button>

          <button class="negative" name="cancel" id="cancel" hidden="hidden">
              <img src="dba_images/cross.png" alt=""/>
              Cancel
          </button>
      </div>
      </form>
    </body>
 </html>

我可以进行哪些更改,以便当我单击编辑时,它将三个按钮的 hidden 属性设置为 false

What changes can I make, so that when I click on edit it sets the hidden property of three buttons to false?

推荐答案

如果进行以下更改,它也可以在没有jQuery的情况下工作:

It also works without jQuery if you do the following changes:


  1. type = button 添加到编辑按钮,以免触发表单的提交。

  1. Add type="button" to the edit button in order not to trigger submission of the form.

将函数的名称从 change()更改为其他名称。

Change the name of your function from change() to anything else.

请勿使用 hidden = hidden ,而应使用CSS: style = display:none;

Don't use hidden="hidden", use CSS instead: style="display: none;".

以下代码对我有用:

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link rel="STYLESHEET" type="text/css" href="dba_style/buttons.css" />
<title>Untitled Document</title>
</head>
<script type="text/javascript">
function do_change(){
document.getElementById("save").style.display = "block";
document.getElementById("change").style.display = "block";
document.getElementById("cancel").style.display = "block";
}
</script>
<body>
<form name="form1" method="post" action="">
<div class="buttons">

<button type="button" class="regular" name="edit" id="edit" onclick="do_change(); return false;">
    <img src="dba_images/textfield_key.png" alt=""/>
    Edit
</button>

<button type="submit" class="positive" name="save" id="save" style="display:none;">
    <img src="dba_images/apply2.png" alt=""/>
    Save
</button>

<button class="regular" name="change" id="change" style="display:none;">
    <img src="dba_images/textfield_key.png" alt=""/>
    change
</button>

    <button class="negative" name="cancel" id="cancel" style="display:none;">
        <img src="dba_images/cross.png" alt=""/>
        Cancel
    </button>
</div>
</form>
</body>
</html>

这篇关于HTML中按钮的隐藏属性的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆