2017-01-24 3 views
0

このような私のコードでエラーが発生して、この中、レールスクリプトの検証で

if (!obj.checked){ 
     if (attendance_tardy.checked == true){ 
      attendance_tardy.click(); 
     } 
     absentType.required = true; // flash error message 
     dropdown.style.display = "block"; 
     remark_div.style.display = "block"; 
     tardy_div.style.display = "none"; 
     remarks.required = true; 

    }else{ 
     dropdown.style.display = "none"; 
     absentType.required = false; 
     remark_div.style.display = "none"; 
     tardy_div.style.display = "block"; 
     remarks.required = false; 
    } } 

をスクロール、私はスクロールしたい場所に必要な用語で表示されるエラー。どのようなコードを追加したいですか?私はこれで明確な見解ではない。誰か助けて。

EDIT
これは、

<div id="reason<%= index.to_s %>" <% if (list.attendance_status == true) then %> style="display: none;" <% end %>> 
         <% if (@absenteelists != nil) then %> 
          <%= collection_select(:absent, 'absent_type'+index.to_s, @absenteelists, :parameter, :value, 
          {:prompt => "Select Reason", :selected => list.absent_type}, 
          {:class => "country_code-drpdwn select2"}) %> 
         <%else%> 
          <select id="absent_absent_type"+index.to_s name="absent[absent_type]" class="country_code-drpdwn select2"> 
           <option value="">Select Reason</option> 
          </select> 
         <%end%> 
        </div> 

おかげビューページでの私のdiv一部です。

+0

ここで答えを見つけることができます:http://stackoverflow.com/questions/4801655/how-to-go-to-a-specific-element-on-pageここに:http:// stackoverflow .com/questions/5007530/how-do-i-scroll-to-an-element-using-javascript –

+0

@AndrewParamoshkin私のコードで説明することはできますか?私はフラッシュのメッセージを得るが、私は正確なエラーの場所にスクロールできません。このスクリプトの中でどこに参加するのかをコードで伝えることはできますか?申し訳ありませんが、私はスクリプトの検証を初めて行っています。 – Prabha

+0

これは、検証についてのものではありません。たとえば、3つのエラーメッセージ(またはエラーのある入力)があり、JSが 'em(クラス、またはidまたはsmth elseで)を見つけることができます。したがって、window.scrollやjQuery animateを使ってページを読み込んだときに、これらの要素(たとえば最初の要素)だけをスクロールすることができます。 –

答えて

0

次のコードを使用してエラー箇所にスクロールしています。

var elements = document.querySelectorAll('select');//instead of select can use other input types 
for(var i = elements.length; i--;) { 
elements[i].addEventListener('invalid', function() { 
    this.scrollIntoView(false); 
}); 
} 

これは私にとってはうまくいきます。 :) :)

関連する問題