2016-12-12 5 views
0

enter image description here DIVタグにはいくつかのフィールドがあります。これらのフィールドは、jquery rules/validatorを使用して検証され、検証エラーが発生した場合、DIVタグ内にある入力フィールドとともにインラインでエラーメッセージを表示します。問題は、ルールバリデーターが比較的長いエラーメッセージを表示し、エラーメッセージが次のdivタグをボトムにプッシュする次の行に移動し、ラベルではなくフォーム入力フィールドにのみこれを行う場合ですDIVでもある左側にあります。そのため、ラベルと入力フィールドは正しく位置合わせされません。添付された画像にはフィールドが誤っています。DIVタグ内のjqueryルール/バリデーターエラーメッセージを表示

フィールズ擬似、

<DIV class="outer-left-bm">Location:&nbsp;</DIV><DIV class="outer-right-bm"><form:select path="location" items="${locationList}" itemValue="code" itemLabel="desc" /></DIV> 
<DIV class="outer-left-bm">Reference Transaction Number:&nbsp;</DIV><DIV class="outer-right-bm"><form:input path="refTranNbr" maxlength="20" size="20" /></DIV> 
<DIV class="outer-left-bm">Date of Reference Transaction:&nbsp;</DIV><DIV class="outer-right-bm"><form:input path="refTranDate" size="10" maxlength="10" /> (mm/dd/yyyy)</DIV> 

jQueryのルール/バリメッセージ

$("#aFormID").validate({ 
     rules: {    
      refTranNbr: { 
       required: function (element) { 
        return $("#refTranDate").val().length > 0; 
       }, 
       refNumChk: true 
      }, 
      refTranDate: { 
       required: function (element) {     
        return $("#refTranNbr").val().length > 0; 
       }, 
       lessThanToday: true 
      }, 
      messages: {   
        refTranNbr: { 
         required: "Please enter the reference transaction number to complete this transaction.",   
         refNumChk: "Please enter a valid Reference Transaction Number. Note: All letters must be in upper case." 
        },   
        refTranDate: { 
         required : "Please enter a date for the Refering Transaction to complete this transaction.", 
         lessThanToday: "Please enter a reference transaction date less than today's date." 
      } 
      } 

    }); 

対応するCSS:あなたは.outerでdivの両方を結合します、親のdivを追加することができます

DIV.outer-left-bm { 
    width:50%; 
    float: left; 
    border: 1px; 
    text-align: right; 
    margin-bottom: 8px; 
} 
DIV.outer-right-bm { 
    width: 50%; 
    float: right; 
    border: 1px; 
    text-align: left; 
    margin-bottom: 8px; 
} 
label.error { 
    /* remove the next line when you have trouble in IE6 with labels in list */ 
    color: red; 
    font-size: 9pt; 
    font-style: italic; 
    word-break:break-all; 
} 
+0

あなたは、div要素の高さをハードコーディング長すぎるテキストをカットして、メッセージの全文が表示されますDIVにタイトルを追加することができます。この方法は受け入れられますか? – Teo

+0

DIVにタイトルを追加してフルテキストを表示しますか?あなたは例を挙げて説明できますか? – JNPW

+0

これを確認してください:

Short text
Teo

答えて

0

-left-bmと.outer-right-bm、たとえば「親部門」

<div class="parent"><DIV class="outer-left-bm">Reference Transaction Number:&nbsp;</DIV><DIV class="outer-right-bm"><form:input path="refTranNbr" maxlength="20" size="20" /></DIV></div> 

を入力し、次のCSSをparnet divに渡します。

.parent {表示:インラインブロック重要}

+0

いいえ、正しく整列されません。あなたのコードと対応するCSSをコピーしました。 – JNPW

関連する問題