Javascript增加textbox +1的值

时间:2012-11-20 20:24:05

标签: 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' value='0' size='5' maxlength='5'/> </td>

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

4 个答案:

答案 0 :(得分:1)

这比我原先想象的要复杂得多。我没有意识到两个输入都可以修改。我终于通过监听退格并在第一个输入上删除它。如果输入看起来太快,它仍然有错误。

这是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);
}

这是指向fiddle的链接。

答案 1 :(得分:0)

在输入元素中添加一个onkeydown侦听器,用于检查文本的当前大小并更新值。

答案 2 :(得分:0)

向对象添加onkeydown()事件,因此:

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

然后JS:

function increaseValue(object)
{
object.Value += 1;
}

答案 3 :(得分:0)

document.getElementsByName("form_c_port")[0].value = parseInt(document.getElementsByName("form_c_port")[0].value) + 1

请参阅http://jsfiddle.net/NK6dB/