gpt4 book ai didi

html - Materialise Framework - 所需字段的验证不起作用

转载 作者:太空狗 更新时间:2023-10-29 16:45:05 25 4
gpt4 key购买 nike

我正在使用 Materialize CSS 框架,但表单验证无法正常工作。

电子邮件验证工作正常:

<div class="row">
<div class="input-field col s12 m5 offset-m3">
<i class="material-icons prefix">email</i>
<input type="email" id="input_email" name="email" class="validate" />
<label for="input_email" data-error="Please enter a valid email address">Email</label>
</div>
</div>

然而,当涉及到一个简单的必填字段时,验证不起作用...

<div class="row">
<div class="input-field col s12 m5 offset-m3">
<i class="material-icons prefix">account_circle</i>
<input type="text" id="input_name" data-error="Please enter your name" name="input_name" class="validate" required="required" aria-required="true"/>
<label for="input_name">Name</label>
</div>
</div>

正如在另一篇文章中提到的,

materialize best practice validate empty field

我已经添加了 required 和 aria-required 属性(具有 required="required"和 required=""值 [我不确定为什么会提到这个,据我所知前者是正确的]) .然而,除了电子邮件字段之外,验证仍然没有做任何事情......

我做错了什么?

谢谢

附言

Materialise HTML 和 Javascript 的 CDN 在这里:

<!--Import Google Icon Font-->
<link href="http://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">

<!-- Compiled and minified CSS -->
<link type="text/css" rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/materialize/0.97.7/css/materialize.min.css">

<!-- Compiled and minified JavaScript -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/materialize/0.97.7/js/materialize.min.js"></script>

JSFiddle 链接:https://jsfiddle.net/rz0zk5u6/99/

最佳答案

您可以使用以下代码覆盖 validate_field 函数

https://codepen.io/anon/pen/QgqLxE

$(document).ready(function() {
window.validate_field = function(object) {
var hasLength = object.attr('data-length') !== undefined;
var lenAttr = parseInt(object.attr('data-length'));
var len = object.val().length;
if (object.val().length === 0 && object[0].validity.badInput === false && !object.is(':required')) {
if (object.hasClass('validate')) {
object.removeClass('valid');
object.removeClass('invalid');
}
} else {
if (object.hasClass('validate')) {
// Check for character counter attributes
if ((object.is(':valid') && hasLength && (len <= lenAttr)) || (object.is(':valid') && !hasLength)) {
object.removeClass('invalid');
object.addClass('valid');
} else {
object.removeClass('valid');
object.addClass('invalid');
}
}
}
};
});

或者等到后面的PR合并。 https://github.com/Dogfalo/materialize/pull/4883

关于html - Materialise Framework - 所需字段的验证不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38653998/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com