我正在尝试验证名称,但这似乎不起作用。我可以知道它的错吗?点击名字后没有任何反应。没有显示警报。
编辑:我的坏我输入它而不是复制它。我更正了括号和一切。我可以知道如果这里的逻辑错了。
我已经删除.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()">
答案 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
)。
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;