es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Sí, es posible seleccionar varias celdas en una fila y encontrar su suma utilizando Kendo Grid UI jQuery. Para hacerlo, puedes usar el evento select del Kendo Grid y recorrer las celdas seleccionadas para calcular su suma.

    Primero, debes habilitar la selección múltiple estableciendo la opción selectable del grid en "multiple". Luego, puedes manejar el evento select y obtener las filas seleccionadas usando el método select del grid. Para cada fila seleccionada, puedes iterar a través de las celdas usando el método each de jQuery y sumar sus valores. Finalmente, puedes mostrar el resultado en una nueva columna agregando una definición de columna a la opción columns del grid, que utiliza una plantilla para renderizar la suma para cada fila.

    Aquí hay un ejemplo de fragmento de código que demuestra esta técnica:

    $("#grid").kendoGrid({
      selectable: "multiple",
      columns: [
        { field: "column1", title: "Columna 1" },
        { field: "column2", title: "Columna 2" },
        // agregar una nueva columna para mostrar la suma
        {
          title: "Suma",
          template: function(dataItem) {
            var sum = 0;
            $(dataItem).each(function() {
              sum += parseFloat(this);
            });
            return sum;
          }
        }
      ],
      select: function(e) {
        var selectedRows = this.select();
        $(selectedRows).each(function() {
          var cells = $(this).find("td");
          var sum = 0;
          cells.each(function() {
            var value = parseFloat($(this).text());
            if (!isNaN(value)) {
              sum += value;
            }
          });
          // establecer el valor de la suma en los datos de la fila
          var dataItem = $("#grid").data("kendoGrid").dataItem(this);
          dataItem.set("sum", sum);
        });
      }
    });
    

    En este ejemplo, la opción columns del grid está definida con tres columnas: column1, column2 y Suma. La opción template de la columna Suma está configurada como una función que calcula la suma de las dos columnas anteriores para cada fila.

    El evento select del grid es manejado mediante la iteración a través de las filas y celdas seleccionadas, y el cálculo de la suma para cada fila. El valor calculado se establece luego en los datos de la fila correspondiente utilizando el método set del elemento de datos del Kendo Grid.

    Con este enfoque, puedes seleccionar fácilmente varias celdas en una fila y encontrar su suma utilizando Kendo Grid UI jQuery.

Comments are closed.