Comment puis-je savoir entre une zone de texte vierge et une zone de texte avec zéro dedans en javascript?
-
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?
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
}