如何在点击时更改按钮的值

时间:2014-07-15 19:21:09

标签: javascript

我试图在onclick时更改按钮的值。到目前为止,我能够工作,但我希望它再次点击时更改回原始值。有什么建议吗?

我的代码:

{if $activity_count > "0"}
<input onclick="change()" type="button" class="rbutton" value="Show/Hide" id="show_act" />

{literal}
  <script>
   function change()
 {
  document.getElementById("show_act").value="Hide/Show"; 

}
 </script>
{/literal}

{else}
      {/if}

4 个答案:

答案 0 :(得分:3)

设置标志:

var state = true;

然后修改您的更改功能以切换状态并根据状态执行相应的更新:

function change()
{
  var textValue = state ? "Hide/Show" : "Show/Hide";   // select the value based on the state
  document.getElementById("show_act").value=textValue; // apply the value
  state = !state;                                      // toggle the state for the next click
}

以下是一个实例:http://jsfiddle.net/7kxA8/

答案 1 :(得分:1)

试试这个:

document.getElementById("show_act").value = (document.getElementById("show_act").value == "Show") ? "Hide" : "Show";

这一行代码在 change()功能中足够了。

答案 2 :(得分:1)

这是一个示例,它会有一个按钮,单击它时会显示hello和goodbye。使用document.getElementById(“show_act”)将变量调用变量有点困难。在这种情况下,提交按钮有一个名为“show_act”的ID,因此请确保跟踪您的名称。祝你的编程好运!

<script>
function change(id,text1,text2){
    if(document.getElementById(id).value == text1) document.getElementById(id).value = text2;
    else document.getElementById(id).value = text1;
}
</script>
<input onClick="change('show_act','Show','Hide');" type="button" class="rbutton" value="Show" id="show_act" />

答案 3 :(得分:0)

你可以试试这个: -

function change()
{
var element = getdocument.ElemnetById .("show_act");
 element.setAttribute("clicked",true);
if(element.getAttribute("clicked") === 'true'){
element.value="Show/Hide"; 
element.removeAttribute("clicked")
}else {
element.value="Hide/Show"; 
}
}