Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/447.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Javascript增加文本框的值+;1._Php_Javascript_Numeric - Fatal编程技术网

Php Javascript增加文本框的值+;1.

Php Javascript增加文本框的值+;1.,php,javascript,numeric,Php,Javascript,Numeric,基本上,我正在为一个实时网页寻找JavaScript,当用户每次键入时,可以将文本框的当前数值增加1 比如说 <td> <input type='text' name='form_c_port' value='1' size='5' maxlength='5'/> </td> 然后我的下一个文本框值应该是2,每次其他文本框的数值改变时,增加1或减少1 <td> <input type='text' name='form_q_port'

基本上,我正在为一个实时网页寻找JavaScript,当用户每次键入时,可以将文本框的当前数值增加1

比如说

<td> <input type='text' name='form_c_port' value='1' size='5' maxlength='5'/> </td>

然后我的下一个文本框值应该是2,每次其他文本框的数值改变时,增加1或减少1

<td> <input type='text' name='form_q_port' value='0' size='5' maxlength='5'/> </td>


但我似乎无法找到如何在JavaScript中将值增加1。我知道如何在PHP中实现这一点,但是当用户更改值时,我需要在实时网页上执行此操作。

向输入元素添加一个
onkeydown
侦听器,该侦听器将检查文本的当前大小并更新值。

向输入元素添加一个
onkeydown
侦听器,该侦听器将检查文本的当前大小并更新文本值。

向对象添加一个
onkeydown()
事件,以便:

<input type='text' name='form_q_port' value='0' size='5' maxlength='5' onkeydown="increaseValue(this)"/>
向对象添加
onkeydown()
事件,以便:

<input type='text' name='form_q_port' value='0' size='5' maxlength='5' onkeydown="increaseValue(this)"/>


这比我原来想象的要复杂得多。我没有意识到两个输入都可以修改。我最终通过在第一次输入时监听退格和删除操作使其工作。如果输入看起来太快,它仍然有bug

这是HTML

<td> <input id="one" type='text' name='form_c_port' value='1' size='5' maxlength='5'/> </td>
<td> <input id="two" type='text' name='form_q_port' value='0' size='5' maxlength='5'/> </td>

这是jQuery

var lengthValue = $('#one').val().length;
$('#one').keyup(function(event){
    var key = event.keyCode || event.charCode;
    var tempLength = $('#one').val().length;
    if(key == 8 || key == 46){
        if(tempLength < lengthValue){
            lengthValue = $('#one').val().length;
            if(isNumber($('#two').val())){
              $('#two').val(parseFloat($('#two').val()) - 1);   
            }
            else{
              $('#two').val(0);    
            }
        }
    }
    else if(lengthValue < 5){
       lengthValue = $('#one').val().length;
       if(isNumber($('#two').val())){
          $('#two').val(parseFloat($('#two').val()) + 1);   
       }
       else{
          $('#two').val(0);    
       }
    }
});


function isNumber(n) {
  return !isNaN(parseFloat(n)) && isFinite(n);
}
var lengthValue=$('#one').val().length;
$(“#一”).keyup(函数(事件){
var key=event.keyCode | | event.charCode;
var tempLength=$('#one').val().length;
如果(键==8 | |键==46){
if(模板长度<长度值){
lengthValue=$('#one').val().length;
if(isNumber($('#two').val()){
$('two').val(parseFloat($('two').val())-1);
}
否则{
$('二').val(0);
}
}
}
否则如果(长度值<5){
lengthValue=$('#one').val().length;
if(isNumber($('#two').val()){
$('two').val(parseFloat($('two').val())+1);
}
否则{
$('二').val(0);
}
}
});
函数isNumber(n){
return!isNaN(parseFloat(n))和&isFinite(n);
}

这里有一个链接到a。

这比我最初想象的要复杂得多。我没有意识到两个输入都可以修改。我最终通过在第一次输入时监听退格和删除操作使其工作。如果输入看起来太快,它仍然有bug

这是HTML

<td> <input id="one" type='text' name='form_c_port' value='1' size='5' maxlength='5'/> </td>
<td> <input id="two" type='text' name='form_q_port' value='0' size='5' maxlength='5'/> </td>

这是jQuery

var lengthValue = $('#one').val().length;
$('#one').keyup(function(event){
    var key = event.keyCode || event.charCode;
    var tempLength = $('#one').val().length;
    if(key == 8 || key == 46){
        if(tempLength < lengthValue){
            lengthValue = $('#one').val().length;
            if(isNumber($('#two').val())){
              $('#two').val(parseFloat($('#two').val()) - 1);   
            }
            else{
              $('#two').val(0);    
            }
        }
    }
    else if(lengthValue < 5){
       lengthValue = $('#one').val().length;
       if(isNumber($('#two').val())){
          $('#two').val(parseFloat($('#two').val()) + 1);   
       }
       else{
          $('#two').val(0);    
       }
    }
});


function isNumber(n) {
  return !isNaN(parseFloat(n)) && isFinite(n);
}
var lengthValue=$('#one').val().length;
$(“#一”).keyup(函数(事件){
var key=event.keyCode | | event.charCode;
var tempLength=$('#one').val().length;
如果(键==8 | |键==46){
if(模板长度<长度值){
lengthValue=$('#one').val().length;
if(isNumber($('#two').val()){
$('two').val(parseFloat($('two').val())-1);
}
否则{
$('二').val(0);
}
}
}
否则如果(长度值<5){
lengthValue=$('#one').val().length;
if(isNumber($('#two').val()){
$('two').val(parseFloat($('two').val())+1);
}
否则{
$('二').val(0);
}
}
});
函数isNumber(n){
return!isNaN(parseFloat(n))和&isFinite(n);
}

这里有一个指向a的链接。

您尝试过什么吗?是的,如果我将form_c_port值设置为大于1的值,则form_q_port值每次仍保持为1。您尝试过什么吗?是的,如果我将form_c_port值设置为大于1的值,则数值保持为11那么form_q_port值每次仍然保持为1。如果有效,请将其设置为接受答案,以便其他人更容易找到。如果有效,请将其设置为可接受答案,以便其他人更容易找到。您的方法实际上比我试图实现的效果更好,但它存在一个问题,即如果我将form_c_port value设置为100,它不会将form_q_port value更改为101,出于某种原因,它将保持为1@C0nw0nk我已编辑代码以说明此问题。这是一个例子,它在小提琴上仍然做着同样的事情,我还设法通过使用退格onit使它输出“NaN”。@C0nw0nk这比我想象的要复杂得多。我得到了上面的工作,似乎在很大程度上。有一些错误。祝你好运。我不能再花时间了。非常感谢您的帮助Blakey您的方法实际上比我试图实现的效果更好,但它有一个问题,即如果我将form_c_port值设置为100,它不会将form_q_port值更改为101,出于某种原因它会保持在1@C0nw0nk我已编辑代码以说明此问题。这是一个例子,它在小提琴上仍然做着同样的事情,我还设法通过使用退格onit使它输出“NaN”。@C0nw0nk这比我想象的要复杂得多。我得到了上面的工作,似乎在很大程度上。有一些错误。祝你好运。我不能再花时间了。非常感谢你的帮助布莱克