2012-06-07 3 views
1

사용자가 자신의 역할을 수정할 수 있도록 단추 표시를 전환하려고하는 로그인 페이지가 있습니다 (사용자의 사용 가능한 역할 목록에서 선택).문서의 자동 채우기 값 준비하기

처음 버튼을 숨기고 $("#txtUsername").blur()에 표시하고 있습니다.

내 질문 : Chrome 자동 채우기 값을 선택하는 방법이 있습니까?

문서 준비가되면이를 트리거하려고하면 값이 비어 있고 단추가 표시되지 않습니다.

$(function() { 
    $("#btnRoles").hide(); 
    $("#txtUsername").blur(function() { 
     if ($(this).val()) $("#btnRoles").show(); 
     else $("#btnRoles").hide(); 
    }).trigger("blur"); 
}); 

그러나 텍스트 상자는 자동 채우기를 통해 채워집니다. 어떤 아이디어?

답변

1

페이지가로드 된 후 특별히 값을 읽을 수있는 항목을 찾을 수 없습니다. $("#txtUsername").trigger("focus")을 사용하여 텍스트 상자에 초점을 맞추기 시작 했으므로 사용자가 아무 것도하지 않으면 .blur()을 호출하고 역할을 채 웁니다.

1

이 보안 위협이 될 것입니다 :

슬프게도 보안 기능으로 자바 스크립트 자동 완성 입력 데이터에 액세스 할 수 없습니다이며, 제출 버튼을 누르면되지 않는 한 대신 널 (null) 문자열을 반환합니다 (경고 (document.loginform .user_logon.value)가 작동하지 않습니다. 그냥 #txtUsername 입력에 autocomplete="off" 속성을 추가 한 경우 무엇을

source

+0

하지만 자동 채우기로 채워지더라도 콘솔을 사용하여 페이지를로드 한 후에도 값을 확인할 수 있습니다. – tedski

+0

Chrome 콘솔에는 인 페이지 스크립트가 수행하는 몇 가지 제한 사항이 없습니다. –

+0

이것은 페이지가로드 된 후에 작동합니다 :'$ (document) .click (function() {alert ($ ("# txtUsername"). – tedski