javascript - jQuery Textarea 验证不起作用

标签 javascript jquery jquery-validate tooltipster

我想用文本区域验证表单。到目前为止,一切都很好。但是当我尝试使用 jQuery validate 初始化文本区域时插件没有任何反应。工具提示不显示。我正在使用tooltipster以及 jQuery-validate 插件。

在控制台中没有显示 JavaScript 错误。

这是表格:

<form name="reportForm" id="reportForm" method="POST">
<div class="form_alt_design">
    <label for="the_report"></label>
    <textarea name="report" cols="60" rows="4" maxlength="2000" id="the_report" class="report_textbox"></textarea>
</div>
<div id="report_button_container" style="text-align:right;">
    <input class="button_large2" type="submit" name="Submit" id="report_submit" value="<?php echo GAME_SUBMIT_REPORT;?>" onclick="submitReport(<?php echo $id.",'".$type;?>')" />
    <input class="button_large2" type="submit" name="Submit" id="report_submit" value="<?php echo GAME_SUBMIT_REPORT;?>" onclick="" />

    <input type="hidden" name="token" id="token" value="<?php echo $reportToken; ?>" />
</div>

JavaScript 代码:

$(document).ready(function() {
$('#reportForm textarea').tooltipster({
    trigger: 'custom',
    animation: 'fade',
    animationDuration: 250,
    delay: 0,
    onlyOne: true,
    position: 'right',
    theme: ['tooltipster-noir', 'tooltipster-noir-customized']
});

// initialize validate plugin on the form
$('#reportForm').validate({

    errorPlacement: function (error, element) {

        var ele = $(element),
        err = $(error),
        msg = err.text();
        if (msg != null && msg !== '') {
                ele.tooltipster('content', msg);
                ele.tooltipster('open');
    }
    }

    },
    success: function (label, element) {
        $(element).tooltipster('hide');        },
    unhighlight: function(element, errorClass, validClass) {
        $(element).removeClass(errorClass).addClass(validClass).tooltipster('close');
    },
    rules: {
        the_report: {
          required:true
        }
    },
    submitHandler: function (form) {

}
});

最佳答案

您已将 required 规则分配给 the_report,但您的 textarea 包含 name="report"

您只能在rules 对象中使用name

rules: {
    report: { //  <- MUST match the NAME, not the ID
        required: true
    }
},

您从未说明过 ToolTipster 的版本,但是 here is a working jsFiddle demo using v4.0

REFERENCE: Proper jQuery Validate integration for ToolTipster versions 2, 3, and 4 .

关于javascript - jQuery Textarea 验证不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44226342/

相关文章:

javascript - 通过 Ajax 将图像上传到 PHP

asp.net-mvc - 表单例份验证、ASP.NET MVC 和 WCF RESTful 服务

javascript - jQuery 验证 : Validate that one field, 或一对的两个字段都是必需的

javascript - 如何隐藏/显示 Bootstrap 网格中的元素并更新位置

javascript - snap.svg 库中的克隆如何工作?

javascript - 发布 Ajax 并在 Node 中获取空对象

javascript - Javascript 图像轮播上的手动控件(上一个和下一个)

jquery - 在多选元素上使用 jquery 验证远程

javascript - 日期正则表达式允许输入框验证

javascript - 使用 localStorage 跨多个页面存储变量?