2016-08-03 2 views
0

테두리 및 레이블의 색을이 색으로 변경해야하는 곳에서이 코드를 사용합니다.Jquery, CSS, SetTimeOut, GravityForms

I는 한 코드 ...

<script> 
    $(document).ready(function(){ 

    $("#input_28_1").attr("disabled", true); 
    $('#input_27_1').val(""); 
    $('#input_27_1_2').val(""); 
}); 

<script> 
    $(document).ready(function(){ 
      $("#gform_submit_button_27").click(function(e){ 

    var email1 = $('#input_27_1').val(); 
    var email2 = $('#input_27_1_2').val(); 

    //Oks na 
    if (email1 == "" && email2 == "") 
    { 
     setTimeout(function() 
     { 
      $(".gfield_description").clone().appendTo("#clone-email-error"); 
      $("#input_27_1_2").css("border", "1px solid #ec5665"); 
      $("label").css("color", "#333333"); 

     },1000); 
    } 

    //Oks na 
    else if (email1 != "" && email2 == "") 
    { 
     setTimeout(function() 
     { 
      $(".gfield_description").clone().appendTo("#clone-email-error"); 
      $("#input_27_1_2").css("border", "1px solid #ec5665"); 
      $("label").css("color", "#333333"); 

     },1000); 
    } 

    //Oks na 
    else if (email1 == "" && email2 != "") 
    { 
     setTimeout(function() 
     { 
      $("label").css("color", "#333333"); 
      $("#input_27_1_2").css("border", "1px solid #E8E8E7"); 

     },1000); 
    } 
    }); 

});

첫 번째 텍스트 상자와 두 번째 상자가 동시에 색상을 변경하려면 setTimeout을 제거해야합니다. 그러나 setTimeOut을 제거하려고 할 때마다 .clone &.append & .css가 작동하지 않습니다.

희망이 있습니다. 감사.

+0

이 코드가 실행될 때 DOM이로드되어 있습니까? 그것을 좋아하지 않습니다. – Xufox

+0

어떤 특정 이벤트에서이 기능을 실행하고 있습니까 ?? –

+0

'setTimeout' 함수의 시간을 1000ms로 설정합니다. 이것은'setTimeout()'내부의'function()'이 1 초 후에 실행된다는 것을 의미합니다. 이제'setTimeout()'을 제거하면 더 이상'event'에 의해 실행되지 않습니다. 왜냐하면 그것들을 실행하는 것이 없기 때문입니다. 그래서 당신의'function()'을 실행하기 위해서는'setTimeout()' – DestinatioN

답변

0
function test() { 

    if (email1 == "" && email2 == "") { 

     $(".gfield_description").clone().appendTo("#clone-email-error"); 
     $("#input_27_1_2").css("border", "1px solid #ec5665"); 
     $("label").css("color", "#333333"); 


    } 

    //Oks na 
    else if (email1 != "" && email2 == "") { 

     $(".gfield_description").clone().appendTo("#clone-email-error"); 
     $("#input_27_1_2").css("border", "1px solid #ec5665"); 
     $("label").css("color", "#333333"); 

    } 

    //Oks na 
    else if (email1 == "" && email2 != "") { 

     $("label").css("color", "#333333"); 
     $("#input_27_1_2").css("border", "1px solid #E8E8E7"); 


    } 

} 

var myVar = setTimeout(test, 1000);