如何从表单提交创建简单的JavaScript错误消息?
我是JavaScript新手,买了Jon Duckett的书,但我不喜欢他描述的创建/显示错误消息的方式——有人能告诉我,如果名称字段为空,如何显示错误消息吗?非常感谢。以下是我的表单的HTML:如何从表单提交创建简单的JavaScript错误消息?,javascript,Javascript,我是JavaScript新手,买了Jon Duckett的书,但我不喜欢他描述的创建/显示错误消息的方式——有人能告诉我,如果名称字段为空,如何显示错误消息吗?非常感谢。以下是我的表单的HTML: <form action="form.php" method="post"> <fieldset> <legend>Your Details:</legend> <label for="name">Name:&
<form action="form.php" method="post">
<fieldset>
<legend>Your Details:</legend>
<label for="name">Name:</label><br>
<input type="text" name="name" id="name" required="required"><br>
<label for="email">Email:</label><br>
<input type="text" name="email" id="email"><br>
<label for="telephone">Telephone:</label><br>
<input type="text" name="telephone" id="telephone">
</fieldset>
<br>
<fieldset>
<legend>Your Information:</legend>
<p>
<label for="service">What service are you inquiring about?</label>
<select name="service" id="service">
<option value="Collision">Collision</option>
<option value="Mechanical">Mechanical</option>
<option value="Custom">Custom</option>
<option value="Other">Other</option>
</select>
</p>
<label for="comments">Comments:</label>
<br>
<textarea name="comments" id="comments" rows="4" cols="40"></textarea>.
<input type="submit" value="Submit"/>
</fieldset>
</form>
您的详细信息:;
姓名:
电子邮件:
电话:
您的信息:;
你在询问什么服务?
碰撞
机械的
习俗
其他
评论:;
.
签出此链接,此链接显示如何执行简单的JavaScript表单验证
HTML代码
<form name="myForm" onsubmit="return validateForm()" action="form.php" method="post">
<fieldset>
<legend>Your Details:</legend>
<label for="name">Name:</label><br>
<input type="text" name="name" id="name"><br>
<label for="email">Email:</label><br>
<input type="text" name="email" id="email"><br>
<label for="telephone">Telephone:</label><br>
<input type="text" name="telephone" id="telephone">
</fieldset>
<br>
<fieldset>
<legend>Your Information:</legend>
<p>
<label for="service">What service are you inquiring about?</label>
<select name="service" id="service">
<option value="Collision">Collision</option>
<option value="Mechanical">Mechanical</option>
<option value="Custom">Custom</option>
<option value="Other">Other</option>
</select>
</p>
<label for="comments">Comments:</label>
<br>
<textarea name="comments" id="comments" rows="4" cols="40"></textarea>.
<input type="submit" value="Submit"/>
</fieldset>
</form>
function validateForm() {
var x = document.forms["myForm"]["name"].value;
if (x === "") {
alert("Name must be filled out");
return false;
}
}
在此处检查功能
您必须创建一个新元素(span,div…),并在其中写入一个错误,然后将该元素附加到表单字段后面\之前,这会导致该错误。作为一种好方法,您可以创建一个对象,例如
{fieldName:{errorMessage,validationRule}
,其中fieldName是您需要验证的字段名,errorMessage是error,您在错误时显示它,validationRule是regexp,告诉您如何验证该字段。或者您可以对所有这些参数进行硬编码。:)
另外,有很多方法可以验证表单、获取错误并显示它们。你可以很容易地搜索它,并为自己选择最好的。他描述了实现它的方式是什么?你是如何实施的?您遇到了哪些错误/问题?如果你像你说的那样“不是一个粉丝”,这并不意味着作者的方法论是错误的,你是在要求其他人为你写代码,这是离题的。谢谢,我正在看链接。这部分代码对document.forms意味着什么?var x=document.forms[“myForm”][“fname”].value;该部分将获取用户在html表单中输入到JavaScript部分的值,并将其存储在变量x中,因此可以使用该变量进行验证。“myForm”是表单的名称,可以通过为表单标记设置名称属性来指定。“fname”是您案例中输入字段的名称,是“name”。谢谢您的链接。在HTML页面中链接脚本后,使其正常工作。如果我想要错误消息而不是警报框,我该怎么办?您可以使用
id=“error”
在html文件中创建一个空div,然后使用document.getElementById(“error”).innerHTML=“error message”代码>如果您发现我的答案有用,请通过勾选答案旁边的勾号,而不是警告框,来标记答案是否正确。