【问题标题】:What is the JavaScript equivalent of jQuery's hide() and show()? [duplicate]jQuery 的 hide() 和 show() 的 JavaScript 等价物是什么? [复制]
【发布时间】:2013-10-13 21:19:23
【问题描述】:

我有一个简单的隐藏和显示 jQuery 代码,我想问一下是否有与 JavaScript 等效的代码?这是我的代码。

$(document).ready(function() {
  $("#myButton").hide();
  $("#1").click(function() {
    $("#myButton").show();
    $("#myButton").click(function() {
      $("#myButton").hide();
    });
  });
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<select>
  <option id="1">Science</option>
</select>
<input type="button" value="Click" id="myButton" />

我遵循了以下 cmets 的一些代码,但它们不起作用:

<script>
  document.getElementById('myButton').style.display = 'none';

  function selectOptionsupdated(select) {
    document.getElementById('myButton').style.display = 'block';
  }
</script>

<select onSelect="selectOptionsupdated(this)">
  <option id="1">Science</option>
</select>
<input type="button" value="Click" id="myButton" />

我想要的是一开始按钮是隐藏的,当我点击&lt;option&gt;标签“科学”时,按钮会出现,当我点击按钮时,按钮被点击后隐藏。如果有更多的&lt;option&gt; 标签呢?

【问题讨论】:

标签: javascript jquery html


【解决方案1】:

这很简单

document.getElementById('myElement').style.display = 'block'; // show
document.getElementById('myElement').style.display = 'none'; // hide

在您的选择中添加onSelect="selectOptionsupdated(this)

然后

function selectOptionsupdated(select){
//do your stuff here  
}

【讨论】:

  • 那么对于我的选择标签var select1 = document.getElementById('1');如何在点击选择标签中的选项时触发?我应该使用 if else 语句吗?
  • @FrancisJessieS.EnriquezJr.看看这是否有效
  • 这样吗? &lt;select onSelect="selectOptionsupdated(this)"&gt; &lt;option id="1"&gt;Science&lt;/option&gt; &lt;/select&gt; 如果有更多 &lt;option&gt; 标签可以吗?抱歉还在学习。
  • @但是有个问题,不行。我编辑了我的问题。
  • 你想在 javascript 或 jquery 中使用它
【解决方案2】:
var myButton = document.getElementById('myButton');

//hide
myButton.style.display = 'none';

//show
myButton.style.display = 'block';

更新 为您的选择标签..试试这个

html

<select id="list">
<option id="1">Science</option>
</select>

js

var list = document.getElementById('select');

list.addEventListener('change', listSelect, false);

function listSelect(){    
    var selected = list.options[list.selectedIndex].value;//Selected option value    //hide
    myButton.style.display = 'none';

    //show
    myButton.style.display = 'block'; 
}

【讨论】:

  • 那么对于我的选择标签var select1 = document.getElementById('1');如何在点击选择标签中的选项时触发?我应该使用 if else 语句吗?
  • @Abhidev:JS 代码部分被格式化为块引用。我现在已将其更改为代码格式。如果您有任何疑问,请随时回滚。
  • 嘿thanx @Harry ...尝试将其更改为代码格式,但stackoverflow表示代码没有更改,因此不允许。 :P
【解决方案3】:
document.getElementById("button").style.visibility="visible|hidden|collapse|inherit";

【讨论】:

  • 最好为答案伙伴添加解释。这将使 OP 和任何未来的读者都更清楚。另外,我认为您建议使用其中一个值,而不是全部使用 | 分隔格式。
  • 不是操作但可见性:隐藏仍然在页面上占用空间 unlinke display:none w3schools.com/cssref/…
猜你喜欢
  • 2011-12-26
  • 2015-09-21
  • 1970-01-01
  • 1970-01-01
  • 2020-05-01
  • 2010-11-29
  • 1970-01-01
  • 2011-07-07
  • 1970-01-01
相关资源
最近更新 更多