javascript - Jquery 使用多个文本框、文本框数组

标签 javascript jquery arrays textbox

我动态生成了文本框,并希望使用 jquery 对其值进行计算。

文本框名称如下:

A[1] , B[1]  - on change event , Alert SUM of values of A[1] and B[1]

A[2] , B[2]  - on change event , Alert SUM of values of A[2] and B[2] 

A[3] , B[3]   - on change event , Alert SUM of values of A[3] and B[3]

.
.
.
.
A[10] , B[10]   - on change event , Alert SUM of values of A[10] and B[10]

如何在 jquery 中为此任务创建一个函数。 请帮助我完成这项任务。

我有这段代码,但它适用于所有文本框 A 和 B ,但我想指定值集,例如 A[1] 和 B[1] 的 SUM 、 A[2] 和 B[2] 的 SUM ......

$("input[type='text'][name^='A'] ,input[type='text'][name^='B']").
keyup(function(){ 

alert(sumThemUp());

});


function sumThemUp(){
var sum = 0;

$("input[type='text'][name^='A'] ,input[type='text'][name^='B']").
each(function(){

sum+= parseInt($(this).val());

});

return sum;

    };

我的 HTML 是:

<input type="text" name="A[1]">
<input type="text" name="B[1]">
<input type="text" name="A[2]">
<input type="text" name="B[2]">
.
.
.
.
.<input type="text" name="A[10]">
<input type="text" name="B[10]">

最佳答案

我认为你正在尝试这样的事情:

$('input[type=text]').on('keyup', function() {
    var cur = this.name;
    if(cur.indexOf('A') == 0){
       var target = 'B' + cur.replace('A','');
    } else target = 'A' + cur.replace('B','');
    var targetVal = $('input[name="'+ target +'"]').val();
    var sum = parseInt(this.value) + parseInt(targetVal ? targetVal: 0);
    console.log(sum);
});

<强> Working Demo

关于javascript - Jquery 使用多个文本框、文本框数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10657059/

相关文章:

javascript - 通过 Blob URI 在新窗口中从 PUT 获取 PDF

javascript - Momentjs 弃用错误和不同的浏览器功能

javascript - 使用 jquery 通过单选更改输入文本字段值

javascript - 添加输入框后获取值

javascript - CodeIgniter:根据屏幕宽度加载不同的 View 而不是创建移动版本?

javascript - 单击按钮后,获取所选选项的值

jquery - JavaScript 中是否有与 PreventDefault() 相反的函数?

javascript - 反向数组循环 - 当超过索引 0 时返回到最后一个索引

javascript - 如何让我的代码对从 Reddit 获取的 JSON 文本数据进行排序?

java - char* (Array) 强制转换为 unsigned long + 1?