2012-10-23 12 views
3

전자 메일 클래스 keyup-an이라는 입력 필드가 있습니다. 나는 이것을 쉽게 검증하지만 개인이 필드를 수동으로 입력 할 때나 작동합니다. 과거 데이터를 선택하는데도 어떻게 사용할 수 있습니까? 전자 메일을 클릭하고 어제 [email protected]을 입력하면 내역 목록이 삭제되고 선택할 수 있지만 키 업은 아닙니다.jquery 입력 입력 선택 (쉬운)

.change 나 .click을 사용하여 동일한 기능을 시도했지만 작동하지 않았습니다. 너희들?

$('.keyup-an').keyup(function() { 
    $('span.error-keyup-1').hide(); 
    var inputVal = $(this).val(); 
    var numericReg = /^[a-zA-Z0-9_ ]{2,30}$/; 
    if(!numericReg.test(inputVal)) { 
     $(this).css('background', '#FAC3C3'); 
     $(this).after('<span class="error error-keyup-1">Validationfail</span>'); 
    } 
    else { 
     $(this).css('background', 'lightgreen'); 
    } 
}); 

jquery history

답변

1

을 VALID 제안시겠습니까 당신은

autocomplete='off' 

예를

<form name="form1" id="form1" method="post" autocomplete="off"> 

하여이 작업을 수행하거나

뭔가를 시도 할 수 있습니다

좋은 내가 제대로 이해하면, 당신은 당신이 자동 완성 항목을 클릭하면 트리거됩니다 이벤트를 원하는

How to Turn Off Form Autocompletion

+0

하하 멋진데, 가능하다면 자동 완성 기능을 계속 사용하고 싶습니다. – Val

+0

@Val 당신은'$ ('form1')처럼 attr ('autocomplete', 'off');' –

+1

남자라고 생각합니다. 유일한 실제 방법은 자동 완성을 끄는 것입니다. – Val

1
+0

Im은 테스트를 위해 이것을 구현하려고 시도하지만 작동하지 않습니다. 어떤 충고? – Val

+0

메소드를 변경 이벤트로 변경 했습니까? 제안 된 메서드에서 $ (this) .trigger ('change')가 호출되어 메서드를 $ ('.keyup-an')로 변경해야합니다. change (function() {.. 오류가 있습니까? – NthDegree

0

대신 KeyUp 이벤트에 바인딩 기능 .. 어쩌면 바인딩 :

이는 jQuery 플러그인에 대한이 문서를 확인, 나는 이것이 당신이 필요로 정확히 알려진 버그 생각한다 그것은 이벤트를 변경하려면? ok .. 일부 브라우저에서는 작동하지 않습니다. 이전 답변을 참조하고 기본적으로 변경 사항을 감지하는 간격으로 값을 확인하는 타이머를 만드는 솔루션을 사용할 수 있습니다. 유효성 검사가 매우 빠르게 수행되도록하려면 브라우저가 많은 작업을 수행하도록하십시오. 또는 자동 완성으로 전환하여 사용자가 수동으로 제안한 첫 번째 대답처럼 값을 입력하도록 할 수 있습니다.