2014-01-13 2 views
-1

두 개의 "pswd_info""pswd_confirm" 두 개의 암호 필드가있는 <div> 요소가 있습니다.두 개의 암호 입력 필드 값이 같고 0보다 큰지 확인하는 방법

  1. 필드 하나에 초점이 맞춰지면 사업부 (1)가 표시되고
  2. 다시, 두 번째 필드에 초점이 맞춰지면 값을 추가합니다, DIV 2가 보여 추가 할 값
  3. : 같은

    내가 걸려 뭔가 양쪽 필드의 값이 동일한 경우

  4. 는 div의 중에 I가 직면하고

문제점을 보여주는 것,이 div의 비는 필드로서 처음 두 값을 보이고 것은가 제로 (0).
다음과 같은 조건을 작성하는 방법 : 두 필드가 동일해야하며 그 값이 0보다 커야합니다. 그러면 div가 숨겨집니다.

JS FIDDLE LINK

// Field 1 
$("input[type=password][name='pass']").keyup(function() { 
    }).focus(function() { 
     $('#pswd_info').show(); 
}); 

// Field 2 
$("input[type=password][name='cpass']").keyup(function() { 
    }).focus(function() { 
     $('#pswd_confirm').show(); 
}); 

/*------------------------------------------------*/ 

if ( $("#txtPassword").val() == $("#txtPassword2").val()) { 

    $("input[type=password][name='cpass']").focus(function() { 
     $('#pswd_confirm').hide(); 
    }); 

    $("input[type=password][name='pass']").focus(function() { 
     $('#pswd_info').hide(); 
    }); 
} 

은 어떤 도움이 많이 이해할 수있을 것이다. (나쁜 영어로 유감스럽게 생각합니다)

+0

감사합니다. 미안하지만 영어는 잘 못해. – Raihan

답변

0

키 업시 checkSame 함수를 호출하도록 코드를 수정했습니다.

//field 1 
$("input[type=password][name='pass']").keyup(checkSame).focus(function() { 
    $('#pswd_info').show(); 
}); 

//field 2 
$("input[type=password][name='cpass']").keyup(checkSame).focus(function() { 
    $('#pswd_confirm').show(); 
}); 

/*------------------------------------------------*/ 
function checkSame() { 
    if ($("#txtPassword").val() == $("#txtPassword2").val() && $("#txtPassword").val().length != 0) { 
      $('#pswd_confirm').hide(); 
      $('#pswd_info').hide(); 
    } 
} 
+0

이것은 거의 내가 원했던 것이다. 그러나 두 필드의 값이 같으면 한 가지만 집중한다. DIV는 입력에 집중하면 결코 나타나지 않는다. 값이 같을 때 DIV가 숨겨졌지만 다시 초점을 맞추면 다시 나타납니다. 값이 같을 때까지 돌아 오면 안된다. – Raihan

+0

코드를 변경하여 동일성을 먼저 확인한 다음 초점을 맞출 때 div를 표시합니다. – Steve

관련 문제