2013-06-04 95 views
0

您好我有一个表单中的一些元素对输入字段的值作出贡献,添加工作完美,但我有一些问题,从减少值输入字段。jquery试图从表单输入中减去标记的值

我有一个AJAX确认删除脚本启动并运行,确认它触发了一个Ajax请求到一个删除数据库记录的页面,一旦完成,我想从输入字段中返回的值减去给定值。

// Issue is to be deleted so modify the value in the outlay box 
total = $("#CostToSolve").val(); 
$('.rec-outlay').closest(function() { 
    total - (parseInt($(this).text(), 10) || 0); 
    }); 
$('#CostToSolve').attr("value", total + ".00"); 

每当我点击删除其追加.00到输入总,我已经检查控制台变量“总”和它返回正确的号码,所以我假定这就是正确的和猜测的问题仅仅在于我在这一行中使用的语法:

total - (parseInt($(this).text(), 10) || 0); 
+0

不应该返回总数 - (parseInt($(this).text(),10)|| 0); ? –

+4

是'nearest()'自定义方法,还是以最奇怪的方式使用jQuery的'nearest()'? – adeneo

+0

大声笑是的,我有点猜测,我应该删除它。也许我应该使用每个。 – Funk247

回答

1
var total = $("#CostToSolve").val(); 

$('.rec-outlay').each(function(i, ele) { 
    total -= parseInt(ele.value,10) || 0; 
}); 

$('#CostToSolve').val(total + ".00"); 
+0

测试并且不减去该值,只是附加.00。 输入var total = $(“#CostToSolve”)。val();进入控制台返回undefined。也许它没有捕捉到最初的价值。 – Funk247

+0

啊,但只输入'全部'到控制台返回正确的值。对不起,我仍然得到代码检查器如何工作的窍门 – Funk247

+0

似乎对我有用 - > http://jsfiddle.net/SK4Nx/ – adeneo

0

段:

$('.rec-outlay').closest(function() { 
    total - (parseInt($(this).text(), 10) || 0); 
    }); 

什么也不做,你不插入任何地方的结果