此按钮为什么不更改javascript和html中的文本

问题描述 投票:2回答:2

我需要通过从其他按钮激活功能将按钮从“ $ 5 USD”更改为“ $ 10 USD”。自上传以来,我已经更新了该问题,以包含更多的html和CSS信息。这是需要更改其文本的按钮,以及激活所述更改的按钮:

<!DOCTYPE html>
<head>
    <meta charset="utf-8">
    <link rel="stylesheet" href="style.css">
</head>

<body>
    <div>
        <h1 class="fader1">Increase payment?</h1>
        <img class="dog" src="https://i.imgur.com/BAz7AGU.jpg">
            <div class="fader2">
                <input id="money" type="button" value="$5 USD">
                <button onclick="increase()">Increase</button>
            </div>
    </div>
</body>

这里是功能:

function increase() {
  document.getElementById("money").value = "$10 USD";
}

以防万一,这里也是css文件:

.fader1{
    -webkit-animation: fadein 3s; 
}
.dog{
    -webkit-animation: fadein 8s;
    width:50%;
    height:50%;
}
.fader2{
    -webkit-animation: fadein 8s; 
}
@keyframes fadein {
    from { opacity: 0; }
    to   { opacity: 1; }
}
h1{
    font-size:320%;
}
h2{
    font-size:200%;
}
div{
    text-align:center;
}
button,
#money{
    width:20%;
    height:150px;
    font-size:120%;
}

我已经更新了此问题,因为将innerHTML更改为value不会改变结果,所以我希望更多的上下文有帮助。

javascript html button
2个回答
1
投票

如注释中所指出,您需要设置输入的值。试试这个:

function increase() {
  document.getElementById("money").value = "$10 USD";
}
<input id="money" type="button" value="$5 USD">
<button onclick="increase()">Increase</button>

问题编辑后更新:

似乎您尚未将js代码与html链接在一起。如果在浏览器中打开developer console,则会出现参考错误:ReferenceError: increase is not defined。这意味着您的html不了解您编写的increase()函数。

您可以通过几种方法来解决。

最简单的方法是将其直接添加到html:

<body>
    <div>
        <!-- your other code -->
    </div>
    <script>
        function increase() {
            document.getElementById("money").value = "$10 USD";
        }
    </script>
</body>

推荐的执行方法是将要在其中编写函数的.js文件链接到.html文件:

[.html文件:

<body>
    <div>
        <!-- your other code -->
    </div>
    <script src="main.js">
    </script>
</body>

[main.js文件:

function increase() {
  document.getElementById("money").value = "$10 USD";
}

0
投票
  1. 将JS的第2行从.innerHTML更改为.value
  2. 不确定脚本的链接方式,但请尝试将<script></script>移至HTML页脚,以确保在JS函数尝试选择按钮元素之前已完全加载DOM
  3. 如果仍然无法使用,请检查您的控制台是否有任何错误
© www.soinside.com 2019 - 2024. All rights reserved.