好吧,所以我觉得我的问题是一个非常简单的问题。基本上,我创建了一个网站,并尝试使用javascript来验证输入,所有这些最初都是一个。当输入字段留空时,会出现错误等等。我还没有改变任何一件事,现在没有任何形式的验证,它只是忽略了我的javascript。有什么想法吗?
这是Javascript的一个例子;
function validate(el){
var alphabets="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ ";
var temp;
if (el.Full_Name.value == "") {
alert("Cannot leave area field blank!");
return false;
}
}
for (var i=0;i<el.Full_Name.value.length;i++){
temp=el.Full_Name.value.substring(i,i+1)
if (alphabets.indexOf(temp)==-1){
alert("Sorry, your name contains a " + temp +", which is not allowed.")
return false
}
}
这是HTML:
<form name="testform" onSubmit="return validate(testform)">
<table width="650" border="0">
<tr>
<td width="79" valign="top">
<label for="Full_Name">Full Name<span class="required_star"> * </span></label>
</td>
<td width="289" valign="top">
<input size="15" type="text" name="Full_Name" id="Full_Name" maxlength="50" value="" />
</td>
</tr>
<tr>
<td colspan="4" style="text-align:center">
<input type="submit" value="Proceed"/>
</td>
</tr></table>
</form>
答案 0 :(得分:3)
你可以加快/简化一些事情:
<form name="testform" onSubmit="return validate(this)">
注意使用&#39;这个&#39; - 它实际上是指表单元素本身......
JS:
function validate(el) {
if (el.Full_Name.value == "") {
alert("Cannot leave area field blank!");
return false;
}
}
演示:http://jsfiddle.net/tv9hntkL/
P.S。在您的情况下,正确的选择器将是:(document.testform.Full_Name.value == "")
答案 1 :(得分:1)
您正在错误地访问表单输入。
var myForm = document.forms.<form-name>;
myForm.<input-name>.value; // holds the value of a certain input
将允许您正确访问该值。