Php Javascript增加文本框的值+;1.
基本上,我正在为一个实时网页寻找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'
<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这比我想象的要复杂得多。我得到了上面的工作,似乎在很大程度上。有一些错误。祝你好运。我不能再花时间了。非常感谢你的帮助布莱克