jquery - 使用 JQuery 验证时有效地插入一个 Div

标签 jquery html css

我有如下形式的 Jquery 验证:

$(this.initVariables.formId).validate({
     errorElement: "div",
     errorPlacement: function(error, element) {
        error.insertBefore(element.parent());
     }
}

问题是当出现错误时,表格变得扭曲如下: enter image description here

我想做的是有效调整与错误字段相同行的邻居字段,如下所示: enter image description here

div的HTML代码是:

<div class="relatedField>
    <div id="wwgrp_addForm_summaryData_firstName" class="wwgrp" style="float: left; padding-right: 6px;">
          <div id="wwlbl_addForm_summaryData_firstName" class="wwlbl"> 
              <label class="label" for="addForm_summaryData_lastName"> FIRST NAME </label>
          </div>
          <div id="wwctrl_addForm_summaryData_firstName" class="wwctrl">
               <input id="addForm_summaryData_firstName" class="storedPaymentInput_size4 alphabet" type="text" value="" name="summaryData.firstName">
          </div>
    </div>
    <div id="wwgrp_addForm_summaryData_lastName" class="wwgrp" style="float: left; padding-right: 6px;">
          <div id="wwlbl_addForm_summaryData_lastName" class="wwlbl"> 
              <label class="label" for="addForm_summaryData_lastName"> LAST NAME </label>
          </div>
          <div id="wwctrl_addForm_summaryData_lastName" class="wwctrl">
               <input id="addForm_summaryData_lastName" class="storedPaymentInput_size4 alphabet" type="text" value="" name="summaryData.lastName">
          </div>
    </div>
</div>

如何在不更改表单实现的情况下使用 jquery 执行此操作。除此之外,我还有很多领域。请帮忙。谢谢。

我的解决方案是

 errorPlacement: function(error, element) {
     error.insertBefore(element.parent());
     element.parent().parent().siblings().each( function () {
           var child = $(this).children("div.wwctrl");
        $("<div class='SPACE'>&nbsp;</div>").insertBefore(child);
      });
 }

但如您所见,它并不干净,在正确验证后,div 空间未被删除。

enter image description here

关于如何做得更好的任何想法。

谢谢。

最佳答案

你基本上可以在输入的顶部创建一个空白 div 并为它们声明一个宽度/高度。就像你的浏览器会从一开始就计算这个“空白”,你可以通过 $ 插入错误消息('divname').html。只是一个想法。有点像这样..

http://jsfiddle.net/ng8VQ/72/

关于jquery - 使用 JQuery 验证时有效地插入一个 Div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12714423/

相关文章:

javascript - jquery中 'a'标签的点击事件

jquery keyup 函数检查是否为数字

javascript - 当放大浏览器导致一个 div 容器扩展时,如何调整其他 div 容器的长度以保持在同一底线?

html - 我的页面太长。因此显示的错误超过了65535个字节的限制。请建议我解决我的问题

javascript - 对于通过 html 元素和追加仅追加到最后一个元素

javascript - 如何在 javascript 中设置表单的输入值?

html - 包含 rowspan 和 colspan 的复杂 HTML 表格被破坏

html - Bootstrap 位置菜单右上角

javascript - 当我尝试使用 parent.rifiutaSingolo() 从对话框执行定义到父页面的功能时,为什么会收到此错误消息?

html - 如何让右边的元素保持在同一行,而左边的元素换行?