我的注册表单使用HTML5验证来验证必填字段是否已完成。
<div class="container">
<div class="row">
<div class="col-md-6 col-md-offset-3">
<form action="https://www.salesforce.com" method="POST" id="signup">
<div class="form-group">
<label for="first_name">First name</label>
<input id="first_name" maxlength="40" name="first_name" size="20" type="text" class="form-control" required>
</div>
<div class="checkbox">
<label>
<input id="tou" name="tou" type="checkbox" value="1" required="required"/>
I have read and agree to the terms of use.
</label>
</div>
<input type="submit" name="submit" class="btn">
</form>
</div>
</div>
</div>
我已使用CSS将自定义.svg复选框替换为默认复选框。
input[type=checkbox] {
display: inline-block;
font-style: normal;
font-weight: normal;
line-height: 1;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
visibility: hidden;
}
input[type=checkbox]:before {
content: url(/static/img/unchecked.svg);
visibility: visible;
}
input[type=checkbox]:checked:before {
content: url(/static/img/checked.svg);
}
虽然HTML5验证适用于其他字段,但我无法使其适用于自定义复选框。我尝试了jQuery validation with custom CSS checkbox中显示的方法但没有成功。有什么想法吗?
答案 0 :(得分:1)
默认的HTML5验证错误消息不可见,因为您使用以下命令隐藏它:
input[type=checkbox] {
visibility: hidden;
}
请改为尝试:
input[type=checkbox] {
opacity: 0;
}