我想改变每个错误信息的位置.这将在相应的< div class =“errorBlock”>< / div> ;.中显示错误消息.通过使用文档的代码,错误msg显示在元素(输入)之前,并不按预期显示.
有任何想法吗?
有任何想法吗?
根据文档:
errors: { container: function (element,isRadioOrCheckBox) { var $container = element.parent().find(".parsley-container"); if ($container.length === 0) { $container = $("<div class='parsley-container'></div>").insertBefore(element); } return $container; } }
我的HTML代码是:
INPUT
<div class="input-group date date-picker" data-date-format="dd/mm/yyyy" data-date-viewmode="years"> <input class="form-control dataScrap firstInput" type="text" parsley-notblank="true" parsley-required="true" parsley-error-message="You must input a birth date" readonly="readonly"/> <span class="input-group-btn"> <button class="btn default" type="button"><i class="fa fa-calendar"></i></button> </span> <div class="errorBlock"></div> </div>
复选框
<div class="checkBox-list"> <label class="checkBox-inline"> <input type="checkBox" parsley-group="checkBoxGroup" parsley-mincheck="2"> CheckBox 1 </label> <label class="checkBox-inline"> <input type="checkBox" parsley-group="checkBoxGroup"> CheckBox 2 </label> <div class="errorBlock"></div> </div>
解决方法
您可以通过覆盖
Parsley’s default options来做到这一点(注意:我在说最新的版本[v2.0],我建议你使用)你基本上想要给Parsley一个方法,根据输入找到.errorBlock容器领域.看起来像这样:
var parsleyConfig = { errorsContainer: function(pEle) { var $err = pEle.$element.siblings('.errorBlock'); return $err; } } $('#yourFormID').parsley(parsleyConfig);
注意:使用这种方法,您不能使用Makrand建议的parsley-validate属性.在您的表单上调用.parsley也是一样的,除了您可以添加自定义选项.此外,您需要将所有的欧芹属性与数据进行前缀,因为它们是数据属性(从v2.0开始).