使用javascript隐藏/显示按钮
我有一个隐藏一些按钮并创建另一个按钮的功能,当我单击创建的按钮时,它会使以前隐藏的按钮再次可见,但它实际上不起作用使用javascript隐藏/显示按钮,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我有一个隐藏一些按钮并创建另一个按钮的功能,当我单击创建的按钮时,它会使以前隐藏的按钮再次可见,但它实际上不起作用 function hideButtons(){ var buttons=document.getElementsByTagName("input"); for(var i=0;i<buttons.length;i++) { if(buttons[i].type=="button"){ buttons[i].style.disp
function hideButtons(){
var buttons=document.getElementsByTagName("input");
for(var i=0;i<buttons.length;i++) {
if(buttons[i].type=="button"){
buttons[i].style.display="none";}
}
var back=document.createElement("input");
back.setAttribute("type", "button");
back.setAttribute("value","BACK");
back.setAttribute("id","btnBack");
back.onclick=showButtons();
document.body.appendChild(back);
}
function showButtons(){
var buttons=document.getElementsByTagName("input");
for(var i=0;i<buttons.length;i++) {
buttons[i].style.display="initial";
}
}
函数隐藏按钮(){
var buttons=document.getElementsByTagName(“输入”);
对于(var i=0;i),在附加事件侦听器时,不得调用侦听器函数:
function hideButtons () {
var buttons = document.querySelectorAll("input[type=button]");
for (var i = 0; i < buttons.length; i++) {
buttons[i].style.display = "none";
if (buttons[i].getAttribute("id") === "btnBack") {
// remove the id from the current "back" button
buttons[i].removeAttribute("id");
}
}
var back = document.createElement("input");
back.setAttribute("type", "button");
back.setAttribute("value","BACK");
back.setAttribute("id","btnBack");
back.onclick = showButtons; // important!
document.body.appendChild(back);
}
function showButtons () {
var buttons = document.querySelectorAll("input[type=button]");
for (var i = 0; i < buttons.length; i++) {
buttons[i].style.display = "initial";
}
}
函数隐藏按钮(){
var buttons=document.queryselectoral(“输入[type=button]”);
对于(变量i=0;i
正如PeterMader所说,问题在于您在事件侦听器中调用了showButtons()
函数。您希望像Peter建议的那样调用对函数的引用,或者另一种方法是在函数中包装showButtons()
函数隐藏按钮(){
var buttons=document.getElementsByTagName(“输入”);
对于(变量i=0;i
你能创建一个JSFIDLE或类似的工具来运行你的代码吗?我可能需要一些html代码