javascript - 用户单击提交按钮时有效元素未突出显示
问题描述
我目前正在使用 jQuery 验证插件来验证我的表单字段。我设置了不需要用户名字段、需要帐户名称字段和不需要评论文本区域字段的规则。当用户单击“保存”按钮时,“有错误”类将突出显示无效元素。但是,'has-success'类没有突出显示 textarea 有效元素。为什么呢?这是我的问题的屏幕截图,所需的结果以及我的代码
$(document).ready(function () {
$.validator.setDefaults({
errorClass: 'help-block',
highlight: function (element) {
$(element)
.closest('.form-group')
.addClass('has-error');
},
unhighlight: function (element) {
$(element)
.closest('.form-group')
.removeClass('has-error')
.addClass('has-success');
}
});
$('#dataForm').validate({
rules: {
userNameInput: {
required: false
},
accountNameInput: {
required: true
},
commentInput: {
required: false
}
}
});
});
$('#saveButton').on('click', function () {
if ($('#dataForm').valid() == true) {
}
alert('nice');
});
<form id="dataForm" method="post" action="#">
<div class="form-group col-md-12">
<label class="control-label col-md-4" for="accountNameInput">Account name</label>
<input type="text" id="accountNameInput" name="accountNameInput" class="form-control font-bold"
maxlength="100" placeholder="Account name" value="" />
</div>
<div class="form-group col-md-12">
<label class="control-label col-md-4" for="userNameInput">userName</label>
<input type="text" id="userNameInput" name="userNameInput" class="form-control font-bold"
maxlength="100" placeholder="userName" value="" />
</div>
<div class="form-group col-md-12">
<label class="control-label col-md-4" for="commentInput">Comments</label>
<textarea class="form-control" id="commentInput" rows="5"></textarea>
</div>
<input type="button" class="btn btn-primary" value="Save" id="saveButton" />
</form>
解决方案
推荐阅读
- node.js - 反应,节点:变量在 app.post() 上显示未定义
- javascript - ajax, jquery with mysql query in js - 这可能吗?
- javascript - $.get 返回相同的数组
- node.js - 未使用 REST API 在 Node Js 中调用函数
- regex - 基于排除字符集的Python正则表达式搜索
- python - Discord python 随机调查/测验
- ios - 如何阻止网络视图自动播放视频?
- python - 列表列表中位置 x 的最大值
- c# - 如何将datagridview上的选定数据以单独的形式发送到文本框?
- sql - 如何缩短 bigquery 查询的运行时间