javascript - 让 Parsley 2.x 正确使用 Bootstrap 3

标签 javascript jquery twitter-bootstrap twitter-bootstrap-3 parsley.js

我正在使用 Twitter Bootstrap 3.1.1Parsley v2.0.0-rc3。我让它主要与 classHandler 选项分开工作。

我有这样的 HTML:

<div class="form-group">
    <label class="control-label" for="username">User Name</label>
    <input class="form-control" id="username" name="username" required="" type="text" value="">   
</div>

然后像这样运行欧芹:

$("#register_form").parsley({
    successClass: "has-success",
    errorClass: "has-error",
    classHandler: function(el) {
        return $(el).closest(".form-group");
    },
    errorsWrapper: "<span class='help-block'></span>",
    errorTemplate: "<span></span>"
});

一切正常,但成功/错误类应用于错误的元素。页面加载后,我得到:

<div class="form-group">
    <label class="control-label" for="username">User Name</label>
    <input class="form-control" id="username" name="username" required="" type="text" value="" data-parsley-id="5043">
    <span class="help-block" id="parsley-id-5043"></span>
</div>

验证后,结果是这样的:

<div class="form-group">
    <label class="control-label" for="username">User Name</label>
    <input class="form-control has-error" id="username" name="username" required="" type="text" value="" data-parsley-id="5043">
    <span class="help-block filled" id="parsley-id-5043">
        <span class="parsley-required">This value is required.</span>
    </span>
</div>

但是,我期望有所不同:

<div class="form-group has-error">
    <label class="control-label" for="username">User Name</label>
    <input class="form-control" id="username" name="username" required="" type="text" value="" data-parsley-id="5043">
    <span class="help-block filled" id="parsley-id-5043">
        <span class="parsley-required">This value is required.</span>
    </span>
</div>

我已使用 alert 验证了该函数正在运行。但我对 jQuery 和 JavaScript 很陌生,所以我不知道如何进一步调试并修复它。

最佳答案

你应该尝试:

classHandler: function(el) {
    return el.$element.closest(".form-group");
}

el 是一个来自欧芹的对象(我使用 chrome 开发控制台看到过它),他有一个带有 JQuery 元素的 $element 字段:)

关于javascript - 让 Parsley 2.x 正确使用 Bootstrap 3,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22217735/

相关文章:

javascript - 仅在函数上缓存变量

javascript - 在 JS 中使用 Bootstrap 颜色

javascript - Bootstrap 数据目标面板在数据父嵌套之外关闭?

javascript - jQuery:在父元素中查找冒泡事件的触发元素

javascript - 使用Javascript拦截开发服务器上的链接

javascript - 如何从周数获取 javascript 日期?

javascript - 长度 - 1 比 JS 中应有的长度要长

css - 关于如何调查 Bootstrap 设计页面中的 css 问题的任何建议?

javascript - document.getElementbyId 与简写 (Id.someMethod)

asp.net-mvc-3 - ajax 调用导致错误而不是成功