名称验证无效

时间:2016-03-23 22:48:38

标签: javascript

我正在尝试验证名称,但这似乎不起作用。我可以知道它的错吗?点击名字后没有任何反应。没有显示警报。

编辑:我的坏我输入它而不是复制它。我更正了括号和一切。我可以知道如果这里的逻辑错了。 我已经删除.value,因为仍然没有进入窗口警报。

  function Validation()
    {
        isValid = true;
        var x = document.forms["form1"]["FirstName"].value;
        var alphaExp = /^[a-zA-Z]+$/;
        if(x.value.match(alphaExp))
        {
            window.alert("Invalid FirstName, Enter again");
            isValid = false;
        } 

   if (!isValid)
        {
            window.alert("All Details Updated");
        }

        return isValid;
    }
 <form name="form1" method="post" onsubmit="return Validation()">

1 个答案:

答案 0 :(得分:2)

这一行错了:

rm(list = ls())
options(warn = 2)
iterations = 1
n = 10
proportions = seq(.3, .7, by = .1)
#stores
y = c()

position = 1

#set var ratio
parameter = 1.25
#loop over proportions
for(p in proportions){
  n1 = p*n
  n2 = n-n1
  for(i in 1:iterations){
    #new ys
    newy1 = sqrt(parameter)*rnorm(n1)
    newy0 = rnorm(n2)
    newy = c(newy1, newy0)
    y[position:(position+n-1)] = newy


    position = position+n
  }
}

您在设置 if(x.value.match(alphaExp)) 时已使用.value,在检查时再次使用它是没有意义的。您应该在Javascript控制台中收到错误消息,说

  

TypeError:无法读取属性&#39;匹配&#39;未定义的

在那条线上。

应该是:

x

你也有倒退的逻辑。当正则表达式没有匹配时,您应该显示错误消息,并显示&#34;所有详细信息已更新&#34; if(x.match(alphaExp)) 为真时(或仅使用isValid)。

&#13;
&#13;
else
&#13;
function Validation() {
  isValid = true;
  var x = document.forms["form1"]["FirstName"].value;
  var alphaExp = /^[a-zA-Z]+$/;
  if (!x.match(alphaExp)) {
    window.alert("Invalid FirstName, Enter again");
    isValid = false;
  } else {
    window.alert("All Details Updated");
  }

  return isValid;
}
&#13;
&#13;
&#13;