Как я могу рассчитать общую стоимость выставления счетов для списка продуктов с помощью javascript

#javascript #java #jsp

Вопрос:

Поэтому я получаю информацию на своей странице JSP с помощью скриптлета. Мне нужно рассчитать общую стоимость продуктов .

 <%
                                    List<Products> listProducts = employeeService.listProducts();
                                    for (Products product:listProducts){
                                %>
                                <tr>
                                  <th><%=product.getProduct_id() %></th>
                                  <td><%=product.getName() %></td>
                                  <td>amp;#8377; <%=product.getPrice() %></td>
                                  <td><%=product.getCategory() %></td>
                                  <td><input type="checkbox" name="addProduct"></td>
                                </tr>
                              
                                <%} %>
                               
                              </tbody>
                              
                                 <tr><input type="button" value="calculate" onclick="calculate()">Calculate</tr>
                        </table>
                    </div>
                </div>
                        <div class="form-row">
                            <div class="form-group col-md-6">
                                <label for="shippingCost">Shipping Cost</label> <input type="number"
                                class="form-control" id="shippingCost">
                            </div>
                            <div class="form-group col-md-6">
                                <label for="totalOrderValue">Total Order Value</label> <input type="number"
                                class="form-control" id="totalOrderValue">
                            </div>
                        </div>
 

Как мне написать функцию Javascript для того же, для чего я не могу назначить идентификаторы отдельным продуктам здесь.

Ответ №1:

Добавьте класс в product.getPrice() td. и выполните итерацию по tds.

JS:

 const sum = Array.from(document.querySelectorAll(".productPrice"))
  .map(priceBlock => priceBlock.innerHTML)
  .reduce(((acc, price) => acc    price), 0);

console.log(sum)