如果该文本框的验证失败,如何将引导程序工具提示放在文本框上? [英] How to put bootstrap tooltip on textbox if validation fails for that textbox?
问题描述
如果没有值(空),我想对文本框执行验证.
如果验证失败,我想在文本框上显示工具提示.
这是我的文本框:
<input type="text" id="txtNo2"/><input type="text" id="txtNo3"/><input type="button" onclick="return ManipulateValue();">函数 ManipulateValue() {var isValid = true;$('#txtNo1,#txtNo2,#txtNo3').each(function () {if ($.trim($(this).val()) == '') {isValid = false;$(this).css({"border": "1px 纯红色",背景":#FFCECE"});$(this).tooltip('show');//不工作}别的 {$(this).css({边界": "",背景": ""});//$(this).tooltip('隐藏');//不工作}});如果(isValid == false){返回假;}//ajax 调用我的控制器方法返回真;}
我已经检查了引导工具提示的示例,甚至尝试过,但它不起作用.
那么如何使用引导工具提示来验证我的文本框??
这是一个如何使用 Bootstrap & 执行此操作的工作示例jQuery,但您也应该阅读了解如何将验证组合在一起,因为有多种方法;此工具提示示例取自 此处
$("#valForm").validate({显示错误:函数(错误映射,错误列表){//清除有效元素的任何工具提示$.each(this.validElements(), function(index, element) {var $element = $(element);$element.data("title", "")//清除标题 - 不再关联错误.removeClass("错误").tooltip("销毁");});//为无效元素创建新的工具提示$.each(errorList, function(index, error) {var $element = $(error.element);$element.tooltip("destroy")//销毁任何预先存在的工具提示,以便我们可以重新填充新的工具提示内容.data("title", error.message).addClass("错误").工具提示();//根据我们刚刚在标题中设置的错误消息创建一个新的工具提示});},提交处理程序:函数(表单){alert("这是一个有效的表格!");}});$('#reset').click(function() {var 验证器 = $("#valForm").validate();验证器.resetForm();});
body {背景:rgba(255, 255, 255, 0.45);}.包装{填充顶部:75px;}#valForm 输入 {宽度:100%;高度:50px;填充:5px 20px;底边距:10px;字体大小:16px;}#valForm 选择 {宽度:100%;填充:5px 20px;底边距:10px;字体大小:16px;边框:1px 实心 #ccc;高度:50px;-webkit 外观:无;-moz-外观:无;外观:无;}表单#valForm {填充:10px;}#valForm .error {边框:3px 实心 #b94a48 !important;背景颜色:#fee !important;}#valForm 标签 {显示:块;底边距:10px;颜色:#1c1c1c;}#valForm .form-group {显示:内联块;}#valForm .btn-primary {宽度:100%;高度:50px;边界半径:0px;字体粗细:400;字体大小:25px;背景:#70CCF4;边框颜色:#fff;底边距:15px;}#valForm .btn-clear {宽度:100%;高度:50px;边界半径:0px;字体粗细:400;字体大小:25px;背景:#C91B08;边框颜色:#fff;颜色:#fff;底边距:15px;}#valForm .tooltip >.tooltip-内{背景色:#f00;}#valForm .tooltip >.tooltip-箭头 {边框顶部颜色:#f00;}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script><script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-validate/1.14.0/jquery.validate.min.js"></script><link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" rel="stylesheet"/><div class="wrapper"><div class="容器"><form id="valForm" name="valForm"><div class="row"><div class="col-md-6"><input data-msg-date="需要一个名字."data-msg-required="NAME 字段是必需的."data-rule-text="true" data-rule-required="true" id="textField" name="textField" type="text" value=""/><label for="textField">名称是必需的.</label>
<div class="col-md-6"><input data-msg-email="需要有效的 EMAIL."数据-味精-最小长度=."data-msg-required="需要有效的 EMAIL.." data-rule-email="true" data-rule-minlength="5" data-rule-required="true" id="emailField" name="emailField" type="text" value=""/><label for="emailField">需要有效的电子邮件.</label>
<div class="row"><div class="col-md-6"><input data-msg-number="需要从 1 到 20 的数字."data-msg-range="需要从 1 到 20 的数字."data-rule-number="true" data-rule-range="[1,20]" id="numberField" name="numberField" type="text" value="0"/><label for="numberField">1 到 20 之间的数字是必需的.</label>
<div class="col-md-6"><select data-msg-required="需要一个选择."data-rule-required="true" id="selectFIELD" name="selectFIELD"><option value="">选择内容</option><option value="Yes">选项1</option><option value="No">选项2</option><option value="Maybe">选项3</option></选择><label for="selectFIELD">需要一个选项.</label>