2012-02-14 47 views
8

Estoy usando el tipo 'número' para ingresar números de punto flotante en una cuadrícula jqGrid. Soy capaz de formatear los flotadores para representar con una coma (utilizamos un comman en Europa como separador decimal). Sin embargo, los campos de entrada (editar formulario o en línea) siguen suponiendo que que ingresaron números de punto flotante usan un punto y no una coma.jqGrid: Formato de número con coma como punto decimal

formatoptions: {decimalSeperator : ','} 

parece influir en el procesamiento pero no en la validación de los datos de entrada.

¿Alguna de las opciones razonables aquí?

Respuesta

7

Puede crear sus propios formateadores personalizados.

http://www.trirand.com/jqgridwiki/doku.php?id=wiki:custom_formatter

La guía explica bien. Debe crear un formateador y un formateador para editar.

Crear una función de formateo de la siguiente manera:

<script> 
    jQuery("#grid_id").jqGrid({ 
    ... 
     colModel: [ 
      ... 
      {name:'price', index:'price', width:60, align:"center", editable: true, formatter:numFormat, unformat:numUnformat}, 
      ... 
     ] 
    ... 
    }); 

    function numFormat(cellvalue, options, rowObject){ 
     return cellvalue.replace(".",","); 
    } 

    function numUnformat(cellvalue, options, rowObject){ 
     return cellvalue.replace(",","."); 
    } 
</script> 

También puede anexar $ u otro formato en estas funciones.

+0

Nota Bene: Miles de separador convertidor es un espacio para los continentales cuando los anglosajones usan "," – nicolallias

+0

Eso no respondería a la pregunta formulada por el propietario de la pregunta. – Jpepper

+1

Es por eso que es un comentario; si conserva el separador de miles de inglés, obtendrá una tontería para cualquier notación numérica, , p. 12,345,678.9 -> 12,345,678,9 en lugar de la correcta (y el propietario lo solicitó) 12345678,9 – nicolallias

Cuestiones relacionadas