一尘不染

更改按钮文字onclick

html

当我单击myButton1按钮时,我希望值更改为Close CurtainOpen Curtain
HTML:

<input onclick="change()" type="button" value="Open Curtain" id="myButton1"></input>

Javascript:

function change();
{
    document.getElementById("myButton1").value="Close Curtain";
}

该按钮现在正在显示打开的窗帘,我希望将其更改为关闭窗帘,对吗?


阅读 746

收藏
2020-05-10

共1个答案

一尘不染

如果我已正确理解您的问题,则希望在“打开窗帘”和“关闭窗帘”之间切换-如果关闭,则切换为“打开窗帘”,反之亦然。如果那是您需要的,那么它将起作用。

function change() // no ';' here
{
    if (this.value=="Close Curtain") this.value = "Open Curtain";
    else this.value = "Close Curtain";
}

请注意,您不需要使用document.getElementById("myButton1")内部更改,因为它是在 上下文
中调用的myButton1-我所说的 上下文 是指您稍后会在阅读有关JS的书时了解的内容。

更新

我错了。正如我之前所说,this不会引用元素本身。您可以使用此:

function change() // no ';' here
{
    var elem = document.getElementById("myButton1");
    if (elem.value=="Close Curtain") elem.value = "Open Curtain";
    else elem.value = "Close Curtain";
}
2020-05-10