10

我有以下代码:JS Fiddle

<html>
    <head>
        <script>            
            function increase(){
                var a = 1;
                var textBox = document.getElementById("text");
                textBox.value = a;
                a++;
            }            
        </script>
    </head>

    <body>
        <button type="button" onclick="increase()">show</button>
        <input type="text" id="text">
    </body>
</html>​

我想做的是:

  1. 单击按钮时,“a”的值将显示在文本框中,并且“a”将递增。
  2. 现在再次单击时,应显示增加的值,但这不会发生。

我哪里错了?

4

10 回答 10

13

您只是在增加一个在函数结束时消失的局部变量。你可以这样做:

      var a = 1;
      function increase(){
            var textBox = document.getElementById("text");
            textBox.value = a;
            a++;
      }    
于 2012-11-06T11:00:17.137 回答
7
<input type="text" id="text" value="1"/>
function increase(){
    var textBox = document.getElementById("text");
    textBox.value++;
}
于 2012-11-06T11:00:52.040 回答
0

最好检查文本字段的值。如果它是空的a=1,否则textfield.value++

于 2012-11-06T11:02:33.903 回答
0

我的意思是var a=1;应该在函数之前声明

于 2012-11-06T11:03:22.960 回答
0

你可以使用这个。只需复制和粘贴

    <html>
    <head>
        <script type="text/javascript">  
        var a = 1;          
            function increase(){


                document.getElementById("text").value=a;
                a=a+1;

            }            
        </script>
    </head>

    <body>
        <button type="button" onclick="increase()">show</button>
        <input type="text" id="text">
    </body>
</html>​
于 2012-11-06T11:04:02.530 回答
0

使用此代码

    var k = 1;
    function shashi() {
        document.getElementById('para').innerHTML = k;
        k++;
    }
    k = k;
</script><br/>

并在点击事件上调用 shashi() 函数

于 2014-02-10T09:36:18.827 回答
0
于 2019-05-18T09:45:27.510 回答
0
 <input type="text" id="text" value="1" />
<p id="plus">+</p>
<script>
    const plus = document.getElementById('plus');
    plus.addEventListener('click', function() {
        var textBox = document.getElementById("text").value;
        let inputNumber = parseFloat(textBox);
        console.log(inputNumber);
        inputNumber += 1;
        document.getElementById("text").value = inputNumber;
    })
</script>
于 2021-01-27T06:04:06.137 回答
0

您也在按钮编码中的函数 increase() 之前和之后加上引号

于 2021-05-30T03:56:22.690 回答
-1

您有一个更简单的方法来实现递增和递减按钮。 使用内联 javascript 的快速示例:

<!-- increment button -->
<input type='button' name='add' onclick='javascript: document.getElementById("qty").value++;' value='+'/>
<!-- quantity input -->
<input name='qty' id='qty' style="text-align:center;" type="text" value="1"  autocomplete="off" size="2">
<!-- decrement button -->
<input type='button' name='subtract' onclick='javascript: document.getElementById("qty").value--;' value='-'/>
于 2016-08-17T09:44:45.830 回答