jquery验证:在自定义div中显示错误标签

时间:2016-11-22 05:59:36

标签: jquery jquery-validate

我正在尝试在div中显示错误标签,但它无效。

<div class="panel-body">
      <div class="well-custom datecontrol-fixed datecontrol-fixed-xs">
          <div class="input-group">
               <input type="text" class="form-control input-sm" id="TextBoxProdMoveDate" name="TextBoxProdMoveDate"/>
                      <label class="input-group-addon btn" for="TextBoxProdMoveDate">
                          <span class="glyphicon glyphicon-calendar"></span>
                       </label>
                     </div>
                    <div id="DivProdMoveDateErrorContainer"></div>
                   </div>
                 </div>

并且,设置这样的规则,

required: true,
messages: {required: "Production move date is required."},
errorLabelContainer: '#DivProdMoveDateErrorContainer',

但是,它不起作用。

我期待的是,在DivProdMoveDateErrorContainer中显示错误标签。

任何建议都将不胜感激。

1 个答案:

答案 0 :(得分:2)

Jquery验证为数据不正确的每个字段生成一个标签,如:

{'1, ': ('      name', '10G')}
{'2, ': ('      name', '10G')}
{'3, ': ('      name2', '40G')}
{'4, ': ('      name2', '40G')}

只需从DOM中复制整个标签并将其粘贴到div中或您想要错误消息的位置,方法是从中删除错误消息文本:

<label id="reg_name-error" class="error" for="reg_name" style="display: inline-block;">Please enter name</label>

刷新页面然后重试。

说明:如果页面中已存在错误标签,则验证jquery将不会生成标签,而是使用已存在的标签。

或者您可以简单地放置在自定义位置,例如:

<label id="reg_name-error" class="error" for="reg_name" style="display: inline-block;"></label>