OnClick仅运行一次

时间:2014-10-01 05:23:39

标签: javascript html

我有一个非常简单的代码用于切换textareas的内容可见性,第一个扩展textarea以显示整个内容,第二个将其返回到之前的大小并显示滚动条。这两个按钮在第一次工作正常,但在此之后什么都不做,据我所知没有错误,任何想法我需要做什么来保持两个按钮在初次运行后工作

<button
onclick='document.getElementById("input0").style.overflow="visible";
        document.getElementById("kpi1").style.overflow="visible";
        document.getElementById("m_kpi1").style.overflow="visible";
        document.getElementById("g_kpi1").style.overflow="visible"'
></button>

<button 
onclick='document.getElementById("input0").style.overflowY="scroll";
        document.getElementById("kpi1").style.overflowY="scroll";
        document.getElementById("m_kpi1").style.overflowY="scroll";
        document.getElementById("g_kpi1").style.overflowY="scroll"'
></button>

1 个答案:

答案 0 :(得分:1)

因为两个按钮都设置了不同的属性,并且一旦设置就没有用来重置它,如果你想在第二个按钮点击时恢复第一个按钮设置比它可以工作。

尝试:

<button
onclick='document.getElementById("input0").style.overflow="visible";
        document.getElementById("kpi1").style.overflow="visible";
        document.getElementById("m_kpi1").style.overflow="visible";
        document.getElementById("g_kpi1").style.overflow="visible"'
></button>

<button 
onclick='document.getElementById("input0").style.overflow="scroll";
        document.getElementById("kpi1").style.overflow="scroll";
        document.getElementById("m_kpi1").style.overflow="scroll";
        document.getElementById("g_kpi1").style.overflow="scroll"'
></button>

一个建议在函数中使用javascript代码并在onclick中调用它。

function setOverflow(value){
  document.getElementById("input0").style.overflow=value;
  document.getElementById("kpi1").style.overflow=value;
  document.getElementById("m_kpi1").style.overflow=value;
  document.getElementById("g_kpi1").style.overflow=value;
}

和html:

<button onclick='setOverflow("scroll")'>scroll</button>
<button onclick='setOverflow("visible")'>visible</button>