HTML5中的必需属性非常方便:
<input type="text" required>
Run Code Online (Sandbox Code Playgroud)
但它仍然允许用户只输入空白区域.是否只有HTML解决方案?
我一直在寻找解决方案,但似乎找不到任何适合我的例子.这是我到目前为止所得到的:
$("#register-form").submit(function(){
if($(".required input").val() == '') {
alert("Please fill in all the required fields (indicated by *)");
$(".required").addClass('highlight');
// $('input[type=submit]', this).attr('disabled', 'disabled');
return false;
}
});
Run Code Online (Sandbox Code Playgroud)
出于某种原因,当我提交表单时没有填写任何必填字段(有两个),那么它可以工作,但如果填写了其中一个,则不会.
有什么想法吗?
谢谢
OSU
我一直在寻找关于如何做到这一点的不同线程,并将下面的脚本放在一起,但是,即使我输入输入所以它们不是空的,我也会弹出警报并且表单不会提交.
谁能看到我做错了什么,或者是否有更简单/更有效的方法呢?
谢谢,
奥苏
HTML:
<form action="#" method="post" class="signup-form">
<div class="required">
<label for="name">Name:</label>
<input type="text" name="cm-name" id="name" value=""><br />
</div>
<div class="required">
<label for="asd-asd">Email:</label>
<input type="text" name="cm-asd" id="asd-asd" value="">
<span class="btn"><input type="submit" name="submit" value="" id="signup"></span>
</div>
</form>
Run Code Online (Sandbox Code Playgroud)
JS:
// Validate form fields in Sign up form
$(".signup-form").submit(function(){
var isFormValid = true;
$(".signup-form .required input").each(function(){
if ($.trim($(this).val()).length == 0){
$(this).parent().addClass("highlight");
isFormValid = false;
} else {
$(this).parent().removeClass("highlight");
}
});
if (!isFormValid) alert("Please fill in all the required fields (highlighted in red)"); …Run Code Online (Sandbox Code Playgroud)