Comment puis-je savoir entre une zone de texte vierge et une zone de texte avec zéro dedans en javascript?

StackOverflow https://stackoverflow.com/questions/4898596

  •  28-10-2019
  •  | 
  •  

Question

J'ai ce qui suit:

var NewCount = document.getElementById('MainContent_gv_NewCount_' + rowIndex).value;
if (NewCount != "") {
    document.getElementById('MainContent_gv_lblTotal_' + rowIndex).innerHTML = "£" + ((originalCount - NewCount) * unitCost).toFixed(2);
} else { 
   document.getElementById('MainContent_gv_lblTotal_' + rowIndex).innerHTML = "";
            }

Les calculs que je fais sont basés sur la valeur dans la zone de texte. (NewCount).

Je veux que l'étiquette mette à jour si la valeur est un nombre (y compris 0), mais à essuyer si l'utilisateur efface la zone de texte. Cependant, pour le moment, il traite une zone de texte vierge et une zone de texte avec 0 de la même manière.

Comment puis-je faire la différence entre les deux?

Était-ce utile?

La solution

Utilisation !== dans ton if déclaration.

Autres conseils

Je ne peux pas reproduire le comportement que vous décrivez. Dans mes tests, une zone de texte avec "0" dans elle sera considérée ne pas vide par javascript en utilisant votre logique de comparaison (! = "").

Voici ma tentative:http://jsfiddle.net/pjgyu/5404/

N'importe lequel des éléments suivants pourrait fonctionner

NewCount.length > 0
NewCount !== ''
if ( NewCount.length == 0 ) {
    // text-box is empty
} else if ( !isNaN(NewCount) ) {
    // the value is a number
}
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top