jQuery - 获取单元格值并使用结果更新单元格值

时间:2012-07-31 15:07:00

标签: javascript jquery

我正在研究一个简单的jQuery函数,该函数将从表中的2个单元格中获取某些输入字段的值,然后执行一些简单的数学运算来计算差异,然后用差异更新另一个单元格值。

这是我的功能:

$(document).ready(function(){

    $('#Calculate').click(function(){

    var nextYearTotal = $("#textfield6").text();
    var lastYearTotal = $("#textfield1").text();

    nextYearTotal = Number(nextYearTotal);
    lastYearTotal = Number(lastYearTotal);

    var updatedTotal = nextYearTotal - lastYearTotal;

    $('#textfield7').html(updatedTotal);
    });
});

无论textfield6和textfield1输入字段中的值是什么,我都会在textfield7单元格中得到“0”。

我是jQuery的新手 - 如果有人可以指出我的错误,我会非常感激。单击表格行中的按钮时会调用此函数。

3 个答案:

答案 0 :(得分:1)

使用值而不是文本。

var nextYearTotal = Number($("#textfield6").val());
var lastYearTotal = Number($("#textfield1").val());

见工作DEMO

$(document).ready(function() {
    $('#Calculate').click(function() {
        var nextYearTotal = Number($("#textfield6").val());
        var lastYearTotal = Number($("#textfield1").val());

        var updatedTotal = nextYearTotal - lastYearTotal;

        $('#textfield7').html(updatedTotal);
    });
});​

修改
对原始帖子的评论澄清了源字段是输入,但目标字段只是一个单元格。

根据评论我更新了DEMO和completness代码。

答案 1 :(得分:0)

试试这个:

$(document).ready(function(){

    $('#Calculate').click(function(){

    var nextYearTotal = parseFloat($("#textfield6").text());
    var lastYearTotal = parseFloat($("#textfield1").text());

    var updatedTotal = nextYearTotal - lastYearTotal;
    if (!(isNaN(updatedTotal)))
         $('#textfield7').html(updatedTotal);
    });
});

假设您有3个<td>个ID为"textfield1""textfield6""textfield7"以及带有id="Calculate"的按钮或链接

答案 2 :(得分:0)

$(document).ready(function(){

$('#Calculate').click(function(){

var nextYearTotal = $("#textfield6").val();
var lastYearTotal = $("#textfield1").val();

nextYearTotal = Number(nextYearTotal);
lastYearTotal = Number(lastYearTotal);

var updatedTotal = nextYearTotal - lastYearTotal;

$('#textfield7').html(updatedTotal);
});
});