我期待如果用户输入4到输入区域以返回true。

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" />

添加到这一点英语js文件:

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

这应该是罚款,让我知道你在想什么是错的。

有帮助吗?

解决方案

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

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

编辑:MooGoo是正确的,我错了,据我的解释

但是是利用+ val的想法是可能不是最好的。虽然上面将工作的方法,你需要一个更好的解决方案将是如下:

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

我们希望-0,而不是+0原因很简单,因为如果它是一个字符串,并要执行任何附加操作柜面它,你将不再有原来的字符串。

其他提示

如果要允许其他字符,以及且仅当输入字段的文本包含4个返回true,你应该做这样的而不是:

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

它将使SENCE到的值相比较,以一个字符串,由于值是一个字符串。这允许您使用严格的平等避免不必要的自动转换。您还可以简化的功能。

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

您可以把您的验证在语言文件,看起来像这样


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


许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top