我有一个函数可以将两个 id-s 相乘并将其写入第三个 id。我必须为所有 id 制作它。
到目前为止我写了这个并且它正在工作,但最后会很长。
function () {
var me1 = parseInt($('#me1').text());
var ar1 = parseInt($('#td1').text());
var sum1 = me1 * ar1;
$('#re1').text(sum1);
var me2 = parseInt($('#me2').text());
var ar2 = parseInt($('#td2').text());
var sum2 = me2 * ar2;
$('#re2').text(sum2);
var me3 = parseInt($('#me3').text());
var ar3 = parseInt($('#td3').text());
var sum3 = me3 * ar3;
$('#re3').text(sum3);
}
我正在寻找一种解决方案,我可以在其中执行与上述代码相同的操作。我在想能不能把id里面的数字改成数组,但是不行。看这里:
function () {
var idnum = ["1", "2", "3"];
var me = parseInt($('#me' + idnum).text());
var ar = parseInt($('#td' + idnum).text());
var sum = me * ar;
$('#re' + idnum).text(sum);
}
最佳答案
像这样循环
function () {
var idnum = ["1", "2", "3"];
for(var i=0; i<idnum.length;i++){
var me = parseInt($('#me' + idnum[i]).text());
var ar = parseInt($('#td' + idnum[i]).text());
var sum = me * ar;
$('#re' + idnum[i]).text(sum);
}
}
此外,如果数字总是按顺序排列,您可以去掉 idnum
数组,只声明元素的总数,例如
function () {
var total = 4; // total number of elements + 1
for(var i=1; i<total;i++){
var me = parseInt($('#me' + i).text());
var ar = parseInt($('#td' + i).text());
var sum = me * ar;
$('#re' + i).text(sum);
}
}
关于javascript - 对多个 id 使用相同的 javascript 操作仅索引号不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32268503/