JQUERY-动态对价目表中的字段值求和
我有一个价目表,希望在一个表中显示用户所做选择的摘要及其总价 为了做到这一点,我试着这样做 HTMLJQUERY-动态对价目表中的字段值求和,jquery,Jquery,我有一个价目表,希望在一个表中显示用户所做选择的摘要及其总价 为了做到这一点,我试着这样做 HTML 挑一个 0-10 ($ 10) 10-20 ($ 20) 20-30 ($ 30) 加额外的 紧急(40美元) 开会(60美元) 总数 JQ $('#urgentchk')。更改(函数(){ 如果(选中此项) { var content=“紧急$40”; var prize=parseFloat($(this.attr('prize')); $(“#项”)。追加(内容); } 其他的 { $
挑一个
0-10 ($ 10)
10-20 ($ 20)
20-30 ($ 30)
加额外的
紧急(40美元)
开会(60美元)
总数
JQ
$('#urgentchk')。更改(函数(){
如果(选中此项)
{
var content=“紧急$40”;
var prize=parseFloat($(this.attr('prize'));
$(“#项”)。追加(内容);
}
其他的
{
$(“#一”).remove();
}
});
$(#meetchk')。更改(函数(){
如果(选中此项)
{
var content=“满足$60”;
var prize=parseFloat($(this.attr('prize'));
$(“#项”)。追加(内容);
}
其他的
{
$('#two')。删除();
}
});
现在,不幸的是,我有两个问题不知道如何解决:
- 在#项中显示所选字段(radiobutton),与使用字段复选框时一样
- 计算#总计中所选字段的价格(总和)
首先,您需要创建一个函数,负责计算总数。之后,每次需要重新计算总计时,都需要调用此函数:页面加载、元素更改等
var updateTotal = function () {
var total = 0;
total += parseFloat($('input[name=weight]:checked').attr('prize'));
total += ($('input[name=urgentchk]:checked').length > 0) ? parseFloat($('input[name=urgentchk]:checked').attr('prize')) : 0;
total += ($('input[name=meetchk]:checked').length > 0) ? parseFloat($('input[name=meetchk]:checked').attr('prize')) : 0;
$('#total').html("Total: $" + total);
};
然后,只要在合适的时候调用此函数:
updateTotal();
例如,选中#meetchk
后:
$('#meetchk').change(function() {
if(this.checked)
{
...
}
updateTotal();
});
这将总是从头开始重新计算总价格。它有时可能很昂贵,这取决于您的应用程序。请看一下下面的小提琴。祝你好运
这就是我想要做的!只有一件事。如何显示div#项中单选按钮的内容?还有其他功能吗?谢谢抱歉,最后一件事,为什么要使用updateTotal var=function()而不是function updateTotal()?谢谢您可以对收音机使用“更改”功能,并以与复选框相同的方式显示内容。对于第二个问题,只需使用选择器$('input[name=weight]'),您可以从这里开始:理想情况下,“Items”应该在updateTotal或类似函数中生成/更新。
updateTotal();
$('#meetchk').change(function() {
if(this.checked)
{
...
}
updateTotal();
});