我有一个订单表格,我可以通过单击一个按钮来附加字段。我运行了一些后端 javascript 来计算订单价格,但总脚本让我望而却步。
我的问题是我需要脚本来搜索整个 DOM 并找到有多少具有与以下模式匹配的 ID。
totprice01 totprice02 totprice03 totprice(n)
我一直在玩这个正则表达式,但恐怕运气不好:
matchStr = new RegExp("\\btotprice\\d{2}\\b", "gi");
一旦我得到了所有 HTML ID 的数组,我需要将它们传递给一个到目前为止看起来像这样的函数 - 注意它都是硬编码的,而不是最不动态的:
document.getElementById('totpricetot').value = Math.round((parseFloat(document.getElementById('totprice1').value)+parseFloat(document.getElementById('totprice2').value)+parseFloat(document.getElementById('totprice3').value)+parseFloat(document.getElementById('totprice4').value)+parseFloat(document.getElementById('totprice5').value)+parseFloat(document.getElementById('totprice6').value)+parseFloat(document.getElementById('totprice7').value)+parseFloat(document.getElementById('totprice8').value)+parseFloat(document.getElementById('totprice9').value)+parseFloat(document.getElementById('totprice10').value))*100)/100;
有谁能帮我把它放入表达式+函数中,将所有值的总和返回到 中?
非常感谢!
编辑
好的,我决定放弃只使用普通的 ol' javascript - JQuery !我已经使用下面的一些示例将这段代码放在一起,但是有人可以帮我调试它吗?我一直从调试器收到“未定义”错误 - 似乎这个函数对 DOM 的其余部分不可用?
<input id="totprice08" onChange="totChange()" class="total_field" />
<input id="totprice09" onChange="totChange()" class="total_field" />
<input id="totprice10" onChange="totChange()" class="total_field" />
etc...
<input id="totpricetot" value="0.00" name="totpricetot" />
jQuery(function($) {
function totChange() {
var sum=0;
$('.total_field').each(function() {
sum += $( this ).val () * 1;
} );
$('#totpricetot').val(sum);
}
});