使按钮在javascript中显示文本

使按钮在javascript中显示文本,javascript,html,function,button,onclick,Javascript,Html,Function,Button,Onclick,当我单击按钮时,我试图在html文件中显示一个数字(1、2或3) 以下是我到目前为止的情况: <tr> <td><button onclick="setDay(1)">1</button></td> <td><button onclick="setDay(2)">2</button></td> <td><button onclick="setDay

当我单击按钮时,我试图在html文件中显示一个数字(1、2或3)

以下是我到目前为止的情况:

<tr>
    <td><button onclick="setDay(1)">1</button></td>
    <td><button onclick="setDay(2)">2</button></td>
    <td><button onclick="setDay(3)">3</button></td>
</tr>

<script type="text/javascript">
    function setDay(a) {
        var day = a
    }
    document.write(day)
</script>

1.
2.
3.
函数设置日(a){
var日=a
}
文件写入(天)

我希望当我单击“按钮“1”时,例如,函数setDay()运行,参数设置为1。这样,变量“day”设置为1,然后当打印变量“day”时,显示数字1。任何帮助都将不胜感激。

您的代码有多处错误:

  • 您正在函数中声明day变量,因此每当函数完成时,该变量都将被销毁。因此,要保持它,请将它移到函数外部,然后从内部进行设置

  • document.write
    将清除您的文档并用您指定的内容替换它。因此,您需要有另一个可以显示日期的元素

  • 代码应为:

    var日;
    函数设置日(a){
    日=a;
    document.getElementById('day')。innerHTML=day;
    }
    
    1.
    2.
    3.
    日期:


    不清楚您希望1,2,3在单击时显示在按钮上还是显示在新位置。无论哪种方式,您都希望将事件和数字传递给函数。然后设置要在其中显示数字的元素的innerHTML

    函数设置日(事件,a){
    e=事件目标;
    e、 innerHTML=a;
    var div=document.getElementById('here');
    var text=div.innerHTML;
    div.innerHTML=文本+“”+a;
    }
    按钮{
    高度:36px;
    宽度:36px;
    垂直对齐:顶部;
    }
    
    
    document.write将完全覆盖您的文档,您将无法单击多次,而且
    var day
    将使变量的作用域限定到该函数,它在函数外部不可见/不可用,并且由于
    write
    调用在函数调用外部,因此不会更新每次单击的按钮。使用要更改的元素的
    innerText
    innerHTML
    textContent
    ,而不是document.write