查找PHP循环元素的总和+;ng建模
我创建了一个表,每个月的每一天都有一行。每行有几个数字输入字段。当有人键入一个数字时,它会在它右边的元素中显示它。我使用了一个PHP while循环,根据当月的当前日期创建了多行 我要做的是使它在用户填写更多行时,将元素中的数字相加 这是我到目前为止所拥有的,我已经放了??????在我一直试图计算总数的span标记中:查找PHP循环元素的总和+;ng建模,php,html,angularjs,angularjs-scope,angular-ngmodel,Php,Html,Angularjs,Angularjs Scope,Angular Ngmodel,我创建了一个表,每个月的每一天都有一行。每行有几个数字输入字段。当有人键入一个数字时,它会在它右边的元素中显示它。我使用了一个PHP while循环,根据当月的当前日期创建了多行 我要做的是使它在用户填写更多行时,将元素中的数字相加 这是我到目前为止所拥有的,我已经放了??????在我一直试图计算总数的span标记中: <!DOCTYPE HTML> <?php date_default_timezone_set('EST'); $day = date(j);
<!DOCTYPE HTML>
<?php
date_default_timezone_set('EST');
$day = date(j);
$month = date(F);
?>
<html ng-app="myApp">
<head>
<link rel="stylesheet" href="css/main.css">
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.12/angular.min.js"></script>
<script src="js/app.js"></script>
</head>
<body>
<h1>Sales Tracker</h1>
<div ng-controller="tableCtrl" id="salesTable">
<table>
<thead>
<tr>
<th rowspan="2">EDIT</th>
<th>DATE</th>
<th colspan="3">CORE</th>
<th colspan="3">ACC</th>
<th colspan="3">PPP</th>
</tr>
<tr>
<td><?php echo $month ?></td>
<td>TWI</td>
<td>Actual</td>
<td>MTD</td>
<td>Units</td>
<td>Actual</td>
<td>MTD</td>
<td>Units</td>
<td>Actual</td>
<td>MTD</td>
</tr>
</thead>
<tbody>
<?php
$i = 1;
while ($i <= $day ) {
echo "<tr>
<td>
<input type='checkbox' ng-model='checked$i'>
</td>
<td>
<span>$i</span>
</td>
<!--CORE-->
<td>
<input type='number' ng-model='twi$i' ng-disabled='!checked$i'>
</td>
<td>
<input type='number' ng-model='core$i' ng-disabled='!checked$i'>
</td>
<td>
<span>{{ ????? }}</span>
</td>
<!--ACCESSORIES-->
<td>
<input type='number' ng-model='accUnits$i' ng-disabled='!checked$i'>
</td>
<td>
<input type='number' ng-model='acc$i' ng-disabled='!checked$i'>
</td>
<td>
<span>{{ ????? }}</span>
</td>
<!--PPP-->
<td>
<input type='number' ng-model='pppUnits$i' ng-disabled='!checked$i'>
</td>
<td>
<input type='number' ng-model='ppp$i' ng-disabled='!checked$i'>
</td>
<td>
<span>{{ ????? }}</span>
</td>
</tr>";
$i++;
}
?>
</tbody>
</table>
</div>
</body>
</html>
销售跟踪
编辑
日期
核心
行政协调会
购买力平价
TWI
实际的
MTD
单位
实际的
MTD
单位
实际的
MTD
使用库进行此操作似乎有些过分:
var elements = document.querySelectorAll('input[ng-model^="core"]');
var total = 0;
for (var i = 0; i < elements.length; i++) {
total += parseInt(elements[i].value);
}
var elements=document.querySelectorAll('input[ng model^=“core”]”);
var合计=0;
对于(var i=0;i
我将向所有核心元素添加一个公共类:
<input type='number' ng-model='core$i' ng-disabled='!checked$i' class='sum_this'>
然后:
你是说实时填充元素的总和?这需要Javascript,因为它是一个接口(客户端),PHP在服务器端工作。是的,我知道,PHP只是用来循环和创建多行。我不知道如何使用Javascript找到总和。今天是12号,共有12行,它们被标记为“core1,core2,core3…,Core12”。使用JS添加所有这些元素的最简单方法是什么?它在span元素中显示NaN。我将总数更改为$scope.total。我做错什么了吗?
function do_sum() {
var elements = document.getElementsByClass('sum_this');
var total_elements = elements.length;
var total = 0.0;
for (var i = 0; i < total_elements; i++) {
total += parseFloat(elements[i].value);
}
alert('The total sum is: ' + total); // Or do something like setting an input value to this
}
<input type='number' ng-model='twi$i' ng-disabled='!checked$i' class='watch_this'> <!-- Assuming you want to watch events on this element -->
function watch_events() {
var elements = document.getElementsByClass('watch_this');
var total_elements = elements.length;
for (var i = 0; i < total_elements; i++) {
elements[i].onkeyup = do_sum; // Assign the do_sum() function as an event listener
}
}
// When the DOM content is loaded, call watch_events()
document.addEventListener('DOMContentLoaded', watch_events, false);