2016-02-10 43 views
1

我有这样的代码:按摩不改变所需的字段格式的HTML5

<form name="submitform" method="post" action="signupsuccessfull.php" onsubmit="return validate(this)" > 
<p id="error_para">* fields are required</p> 
<span id="error_para">*</span> Name:<input type="text" name="name" oninvalid="this.setCustomValidity('Please Enter Your Name.')" required id="u_name" /><br /><br /> 
<span id="error_para">*</span> Username:<input type="text" name="username" oninvalid="this.setCustomValidity('Please Enter Uniqe Username.')" required id="field_username" /><br /><br /> 
<span id="error_para">*</span> Password:<input type="password" name="password" oninvalid="this.setCustomValidity('Please Enter Your Password.')" id="user_password" required /><br /><br /> 
<span id="error_para">*</span>Re-Enter Password:<input type="password" name="repassword" id="user_repassword" oninvalid="this.setCustomValidity('Please Confirm your Password.')" required /><br /><br /> 
<span id="error_para">*</span> Email:<input type="text" name="email" id="user_email" oninvalid="this.setCustomValidity('Please Enter Your Valid Email Address.')" required /><br /><br /> 
<span id="error_para">*</span> Gender:<input type="radio" name="gender" value="male" oninvalid="this.setCustomValidity('Please Select Your Gender')" id="gender_user" required />Male&nbsp;<input type="radio" name="gender" value="female" />Female<br /> 
About Urself:<textarea rows="5" cols="18" name="about" ></textarea><br /><br /> 
<input type="submit" value="Create Account" name="submit" />&nbsp; 
<input type="button" value="Cancle" onClick="parent.location='../example/try2.html'"><br /><br /> 
</form> 

但提交,即使字段不为空,我仍然得到错误信息。

任何人都知道发生了什么。

+0

我想这是你的'oninvalid = “”'这就是问题 –

+0

使用'title',而不是'oninvalid' – Pedram

回答

1

只需添加oninput="setCustomValidity('')"

例子:

<input type="password" name="user_password_new" pattern=".{6,}" required 
    oninvalid="setCustomValidity('Minimum length is 6 characters')" 
    oninput="setCustomValidity('')" /> 

主要问题:

HTML5: Why does my "oninvalid" attribute let the pattern fail?

例子:

<form name="submitform" method="post" action="signupsuccessfull.php" onsubmit="return validate(this)" > 
 
<p id="error_para">* fields are required</p> 
 
<span id="error_para">*</span> Name:<input type="text" name="name" oninvalid="setCustomValidity('Plz enter on Alphabets ')" required oninput="setCustomValidity('')" id="u_name" /><br /><br /> 
 
<input type="submit" value="Create Account" name="submit" />&nbsp; 
 
<input type="button" value="Cancle" onClick="parent.location='../example/try2.html'"><br /><br /> 
 
</form

+0

+1打我的答案;当你出现的时候,我放弃了我的答案。片段示例虽然有误导性。点击创建帐户而不在名称字段中输入文字将不会抛出无效消息。在实际的浏览器中它应该工作。 – BillK