javascript - 自定义Verify.js验证规则不适用

标签 javascript jquery html validation

我正在使用一个名为Verify.js的新插件来验证表单字段,一切都运行良好,直到我开始尝试创建自己的自定义验证规则。

以下是其文档的链接,其中解释了如何创建自定义验证:http://verifyjs.com/#custom-rules

更有用的是插件作者在 JSfiddle 上发布的这个示例:http://jsfiddle.net/jpillora/R4t84/1/我几乎精确地复制了这里的代码格式,但它仍然不起作用。

现在,如果用户未选择输入字段#YesExact,我正尝试让表单不提交。这是一个非常简单的表单验证,只是想让它工作,所以我掌握了使用Verify.js编写自定义验证规则的窍门

表单字段的 HTML 标记如下:

p class="regular-content option-label">Do you know the exact size of your order?</p>
    <input name="YesExact" id="YesExact" data-validate="checkExact" type="button" class="btn btn-tca padding-button" value="Yes">

我写的具有自定义验证规则的javascript是这样写的:

// custom form validation
$.verify.addRules({
    checkExact: function (r) {
        if ($('#YesExact').val() === "") {
            $('#YesExact').notify("Please tell us you know the exact amount!", "error");
            return "Please tell us you know the exact amount!" false;
        }
        return true;
    }
});

这看起来应该完全有效,我非常仔细地遵循了这个例子。然而,我有一个主要线索来解释为什么它不起作用...... javascript 控制台说:

verify.js:缺少规则:checkExact

那么我该如何解决这个问题呢? verify.js在哪里可以找到规则?

网页为HERE如果你想亲自去看看。

预先感谢您的帮助。

最佳答案

您的语法错误位于:

return "Please tell us you know the exact amount!" false;

更改为return false;

您还应该确保仅在单击时设置其值以及“否”按钮,然后检查是否设置了其中任何一个,否则您的验证将始终返回 true。虽然我认为更好的方法是让他们的点击触发隐藏字段的设置为 true 或 false,您可以轻松地将其作为 bool 服务器端拉取。

关于javascript - 自定义Verify.js验证规则不适用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30027864/

相关文章:

javascript - React.js : How to change icon when item in the list is clicked?

javascript - 显示几秒钟后如何隐藏django消息

jquery - 让 div 像复选框一样工作

php - 动态引用不同目录和子目录中所有 PHP 页面的页眉和页脚

javascript - 如何更改事件菜单和子菜单项的样式

javascript - Three.js WebGL 从着色器绘制圆形自定义填充和边框颜色

javascript - 如何在 jQuery Mask 插件中将特殊字符转换为文字字符

javascript - 元素的垂直偏移

html - 如何居中对齐 Bootstrap 进度条?

javascript - 如何使用谷歌图表库将圆环图元素平滑地旋转到底部位置(270度或负y轴)