2010-09-10 95 views
4

我正在使用jQuery驗證插件,當我將所需的類添加到文本框時,它會驗證這些字段。但是,錯誤消息顯示在文本框後面,我不知道是否可以將標籤顯示在相關文本框之後?更改jQuery驗證插件錯誤消息的位置?

我在iframe中有一個頁面,當顯示兩個或多個錯誤消息時,窗體變得太大而無法放入iframe。

我的標籤和文本框:

<asp:Label ID="lblName" runat="server" Text="Your Name" /> 
        <asp:TextBox ID="txtName" CssClass="required" runat="server"/> 
        <br /> 

        <asp:Label ID="lblEmail" runat="server" Text="Your Email"/> 
        <asp:TextBox ID="txtEmail" CssClass="required email" runat="server"/> 
        <br /> 

        <asp:Label ID="lblNumber" runat="server" Text="Your Number"/> 
        <asp:TextBox ID="txtNumber" CssClass="required" runat="server"/> 
        <br /> 

        <asp:Label ID="lblSubject" runat="server" Text="Subject"/> 
        <asp:TextBox ID="txtSubject" CssClass="required" runat="server"/> 
        <br /> 

        <asp:Label ID="lblDetails" runat="server" Text="Details"/> 
        <asp:TextBox ID="txtDetails" CssClass="required" TextMode="MultiLine" runat="server"/> 
        <br /> 

        <asp:Button ID="btnSubmit" CssClass="SubmitButton" runat="server" Text="" onclick="btnSubmit_Click" /> 
        <asp:Label ID="lblResponse" CssClass="Response" runat="server" Text=""></asp:Label> 

在此先感謝。

回答

5

使用errorPlacement。例如:

$("#field-GeoLatlon").validate({ 
     rules: { 
      "parameters[postcode]": { 
       isPostcode: true 
      }, 
      "parameters[houseno]": { 
       startsWithNumber: true 
      } 
     }, 
     errorPlacement: errorPlacement 
    }); 

function errorPlacement(error, element) 
{ 
    var errorDD = $('<dd class="error"></dd>').insertAfter(element.parent('dd').next('dd')); 
    error.appendTo(errorDD); 
} 
+0

this,

我應該在那裏放置HTMl? – Peter 2010-09-23 01:04:52