3 Réponses :


0
votes

sur le serveur, avant de renvoyer vos données sous forme de xml / json / autre, essayez de définir des valeurs DBNULL égales à une chaîne vierge.

Alternativement, s'il est acceptable d'afficher les valeurs nulles comme 0, vous pouvez modifier votre SQL. Dans ce sens: P>

SELECT IsNull(my_amount, 0)


1 commentaires

Je pense que la solution est dans l'option de formateur de Colmodel. Il existe deux manières: formateurs prédéfinis et personnalisés. Dans mon cas, je souhaite utiliser le formateur «monnaie» prédéfini, mais avec la possibilité de revenir en blanc au lieu de «nan» lorsque la valeur est null. Il semble qu'il n'y ait aucun moyen d'éviter de réécrire la fonction de formement de la devise de la caisse. Merci encore Justin.



1
votes

Je ne réécriterais pas le formateur personnalisé - mais le remplace (ou en faites un nouveau)! De cette façon, lorsqu'une nouvelle version de JQGrid sort, vous ne écrasez pas votre wrapper personnalisé.

Par exemple, mes utilisateurs ne veulent pas voir la valeur si elle est 0, alors je le fais: P > xxx pré>

mais je pourrais aussi l'appeler: p> xxx pré>

dans votre cas, je ferais ceci: p>

$.fn.fmatter.currency = function (cellval, opts) {
    if (cellval == null) {
        return '';
    }
    var op = $.extend({},opts.currency);
    if(!isUndefined(opts.colModel.formatoptions)) {
        op = $.extend({},op,opts.colModel.formatoptions);
    }
    if(isEmpty(cellval)) {
        return op.defaultValue;
    }
    return $.fmatter.util.NumberFormat(cellval,op);
};


1 commentaires

Je suggérerais de combiner les deux, i.e. si (cellval == 0 || cellval == null) {retour ''; }



6
votes

C'est vraiment vieux, mais la documentation JQGrid n'a pas eu de réponse facile et cette question retire d'abord dans Google Resultats lorsque je cherchais la même réponse.

J'ai pu afficher une cellule vierge au lieu d'un 0 Lors de l'utilisation de l'option de formateur prédéfinie pour un entier utilisant ce code: p>

{ name: 'Quantity', formatter: 'integer', formatoptions: { defaultValue: ''} }


2 commentaires

Dieu merci qu'il y avait quelqu'un pour répondre à une vieille question "vraiment" :). Vous avez sauvé ma journée même 3 ans plus tard.


Ajoutez-en un de plus au groupe reconnaissant. :)