-1

テキストフィールドの値を増やすためのPLUS +ボタンを備えたテキストフィールドがありますが、同時に(0〜100)の制限が必要です。値を 100 より大きくしたり、0 より小さくしたりしたくありません。

add 関数でのみ機能する以下のコードを試します

<script type="text/javascript">
function add(){
document.getElementById("name").value++;
}
function limit(){
document.getElementById('name').value;
      if(this.value > 200){
           this.value = 200;
      }
      if(this.value < 10){
           this.value = 10;
      }
}
</script>

<form name="quiz" >
<input type='text' name='name' id='name'/>
<input type='button' name='plus' onclick="add();limit();" value='+'/>
</form>

そして、値を 5 ずつ増やすことは可能ですか。

4

6 に答える 6

1

add()次のように、1 つの関数のみを呼び出す (とを組み合わせるlimit()) ようにコードを変更するだけです。

<script type="text/javascript">
    function add() {
        var name = document.getElementById("name"); // Get the input (store in local var).
        var value = parseInt(name.value) + 5; // Store the new value locally.

         if(value > 100){
              value = 100;
         }
         else if(value < 10){
              value = 10;
         }

         name.value = value; // Set the new value.
    }
</script>

そして、次のように呼び出しますadd()

<input type='text' name='name' id='name' value="0"/>
<input type='button' name='plus' onclick="add();" value='+'/>

さらに、より動的にして、パラメーターとして追加する値を送信できます。

function add(numberToAdd) {
    var name = document.getElementById("name");
    var value = parseInt(name.value) + numberToAdd; // Use the parameter
    ....

そして、次のように呼び出します。

<input type='button' name='plus' onclick="add(5);" value='+'/>

このようにして、異なる値を持つより多くのボタンを持つことができます:

<input type='button' name='plus1' onclick="add(1);" value='+1'/> <!-- Will add +1 -->
<input type='button' name='plus2' onclick="add(2);" value='+2'/> <!-- Will add +2 -->
<input type='button' name='plus3' onclick="add(3);" value='+3'/> <!-- Will add +3 -->
于 2012-11-27T08:23:10.213 に答える
1
    function add(){
x=document.getElementById("name").value;
x=Number(x);
x=x+5
document.getElementById("name").value=x;
}

    function limit(){
x=document.getElementById("name").value;
x=Number(x);
      if(x > 100){
           document.getElementById("name").value = 100;
      }
      if(x < 50){
           document.getElementById("name").value = 0;
      }
于 2012-11-27T08:23:17.437 に答える
1

ここで add 関数を呼び出すと、値が 5 ずつ増加します。これは、現在の値が 200 未満で 10 を超える場合にのみ行われます。

function add() {
    var val = document.getElementById("name").value;
    if(val < 200 && val > 10) {
        document.getElementById("name").value += 5;
    }
}

このソリューションでは、2 番目の機能 (制限など) は必要ありません。

于 2012-11-27T08:23:58.950 に答える
0
function add(howMuch){
  document.getElementById("name").value = document.getElementById("name").value+5;
}
于 2012-11-27T08:23:46.487 に答える
0

単純にこれを行う

function add(){
document.getElementById("name").value++;
limit();
}

はい、5 ずつ増やすことができます。これを行うだけです。

document.getElementById("name").value+=5;
于 2012-11-27T08:23:57.697 に答える
0

あなたの場合の簡単な解決策は、あなたが望むすべてを行う関数を1つだけ使用することです...それがあなたを助けることを願っています:)

function add() {
   var limit = document.getElementById("name").value();
   if (limit < 200 || limit > 0) {
     document.getElementById("name").value++;
     //or use this
     //document.getElementById("name").value = limit + 5;
   }
   else
     //anything here.
}
于 2012-11-27T08:26:04.757 に答える