besoin de retourner vrai ou faux sur la base si la valeur dans le champ de texte est un numéro spécifique

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

Question

Je cherche à retourner vrai si l'utilisateur est entré 4 dans le champ de saisie.

function validateAddition() {
  if($("#validateAddition").val() == 4) {
    return true;
  } else {
    return false;
  }
}

<input value="" 
class="validate[required,onlyNumber,length[0,1]funcCall[validateAddition]] text-input" 
type="text" id="validateAddition" name="validateAddition" />

a ajouté dans le fichier de la langue anglaise:

"validateAddition":{
    "nname":"validateAddition",
    "alertText":"* Your math is off, try again."}

Cela devrait être bien, laissez-moi savoir ce que vous pensez est faux.

Était-ce utile?

La solution

http://www.w3schools.com/jsref/jsref_parseInt.asp

return (parseInt($('#validateAddition').val()) == 4)

EDIT:. MooGoo est correct, je me trompais aussi loin que mon explication

est cependant idée d'utiliser + val est probablement pas le meilleur. Bien que la méthode ci-dessus fonctionne comme vous avez besoin d'une bien meilleure solution serait la suivante:

if(($('#validateAddition').val()-0) == 4)

La raison pour laquelle nous voulons -0 par opposition à +0 est tout simplement parce que si elle est une chaîne et que vous souhaitez effectuer des opérations supplémentaires Incase il est, vous n'avez plus la chaîne d'origine.

Autres conseils

Si vous voulez permettre à d'autres personnages aussi bien et retourne vrai que si le texte du champ de saisie contient 4, vous devez faire comme ceci:

if($("#validateAddition").val().indexOf('4') != -1) {

Il serait de comparer la sence de la valeur à une chaîne, puisque la valeur est une chaîne. Cela vous permet d'utiliser égaux stricts en évitant les conversions automatiques inutiles. vous pouvez également simplifier la fonction.

function validateAddition() {
  return $("#validateAddition").val() === "4";
}

Vous pouvez mettre votre validation dans le fichier de langue, à la recherche quelque chose comme ceci


"validateAddition": {
    "regex": /[0-3]|[5-9]/,//something that matches on all numbers but four
    "alertText": "* Your math is off, try again."
},


Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top