列中的和值

时间:2017-02-17 12:20:42

标签: javascript html symfony

我无法使用javascript对HTML列表的小计进行求和。我需要将第5列相加并将结果放在文本框中,以便客户可以看到他的账单总数。问题是,我无法使用数据库,因为它是一个不会在数据库中插入值的表,直到我点击最后一个按钮。任何帮助,将不胜感激。非常感谢

var arr2 = "";
$('#añadir').click(function() {
  var table = document.getElementById("tablaC");
  var id_pla = document.getElementById("plato_id").value;
  var pla = document.getElementById("plato_nombre").value;
  var cantidad = document.getElementById("cantidad").value;
  var punitario = document.getElementById("plato_precio").value;
  var subtotal = (cantidad * punitario)

  if (id_pla != "" && cantidad != "") {
    var row = table.insertRow(cant);
    var cell0 = row.insertCell(0);
    var cell1 = row.insertCell(1);
    var cell2 = row.insertCell(2);
    var cell3 = row.insertCell(3);
    var cell4 = row.insertCell(4);
    var cell5 = row.insertCell(5);

    cell0.innerHTML = cant;
    cell1.innerHTML = id_pla;
    cell2.innerHTML = pla;
    cell3.innerHTML = cantidad;
    cell4.innerHTML = punitario;
    cell5.innerHTML = subtotal;

    cant++;
    arr2 += id_pla + "," + cantidad + ","
    $('#arr').val(arr2);

  }
  validar();

});

这是HTML代码

    <table id="tablaC" class="table table-hover">
        <thead>
        <tr>
            <th>ID Pedido</th>
            <th>ID Plato</th>
            <th>Plato</th>
            <th>Cantidad</th>
            <th>Precio Unitario</th>
            <th>Subtotal</th>

        </tr>
        </thead>
        <tbody id="tbody">
        </tbody>
    </table>
    <input id="arr"  name="arr" value="" />
    <br>

    <br/>

    <input class="btn btn-info" type="submit" value="Crear Registro" id="registro">
</form>
<p></p>

1 个答案:

答案 0 :(得分:0)

我注意到您的文件代码中存在几个问题,您应该修复它们才能使其正常工作:

1)

要比较“”你应该使用严格的平等“!==”而不是“!=”

      if (id_pla !== "" && cantidad !== "") {

而不是:

      if (id_pla != "" && cantidad != "") {

2)“$”未定义为变量,除非您引用jQuery。

    /*here*/  $('#añadir').click(function() {

3)HTML代码中缺少ID:

在这里你说:

     var table = document.getElementById("tablaC");
     var id_pla = document.getElementById("plato_id").value;
     var pla = document.getElementById("plato_nombre").value;
     var cantidad = document.getElementById("cantidad").value;
     var punitario = document.getElementById("plato_precio").value;

但是你没有在你的HTML上给这些元素任何id。它应该是这样的:

    <th>ID Pedido</th>
    <th id="plato_id">ID Plato</th>
    <th id="plato_nombre">Plato</th>
    <th id="cantidad">Cantidad</th>
    <th id="plato_precio">Precio Unitario</th>
    <th>Subtotal</th>