복붙노트

[JQUERY] JQuery와 : 입력 필드에서 변화를 감지 [중복]

JQUERY

JQuery와 : 입력 필드에서 변화를 감지 [중복]

해결법


  1. 1.당신은 텍스트 상자에 '입력'이벤트를 바인딩 할 수 있습니다. 이것은 당신이 (심지어 마우스 오른쪽 버튼으로 클릭과) 뭔가를 붙여 넣을 때, 삭제 및 유형 아무것도, 때마다 입력 변경을 발사한다.

    당신은 텍스트 상자에 '입력'이벤트를 바인딩 할 수 있습니다. 이것은 당신이 (심지어 마우스 오른쪽 버튼으로 클릭과) 뭔가를 붙여 넣을 때, 삭제 및 유형 아무것도, 때마다 입력 변경을 발사한다.

    $('#myTextbox').on('input', function() {
        // do something
    });
    

    당신이 변화 핸들러를 사용하는 경우 사용자가 원하는 것을하지 않을 수 있습니다 입력 상자를 선택 해제 한 후,이 경우에만 실행됩니다.

    모두의 예는 여기에 있습니다 : http://jsfiddle.net/6bSX6/


  2. 2.사용 JQuery와 변경 이벤트

    사용 JQuery와 변경 이벤트

    $("input[type='text']").change( function() {
      // your code
    });
    

    장점 .change 입력이 변경되면 그 .change 이벤트는 화재 것이다 .blur .keypress, .focus, 이상이 있는지


  3. 3.같은 기능 최근 아래와 같은 기능을 사용하여 달성.

    같은 기능 최근 아래와 같은 기능을 사용하여 달성.

    내가 편집에서 저장 버튼을 가능하게하고 싶었다.

    따라서 내가 기능 결합의 키를 아래로 썼다의 keyup는 (백 스페이스를 들어, 삭제) 및 텍스트 필드에 대한 이벤트를 붙여 넣습니다.

    당신을 도움이되기를 바랍니다.

    function checkAnyFormFieldEdited() {
        /*
         * If any field is edited,then only it will enable Save button
         */
        $(':text').keypress(function(e) { // text written
            enableSaveBtn();
        });
    
        $(':text').keyup(function(e) {
            if (e.keyCode == 8 || e.keyCode == 46) { //backspace and delete key
                enableSaveBtn();
            } else { // rest ignore
                e.preventDefault();
            }
        });
        $(':text').bind('paste', function(e) { // text pasted
            enableSaveBtn();
        });
    
        $('select').change(function(e) { // select element changed
            enableSaveBtn();
        });
    
        $(':radio').change(function(e) { // radio changed
            enableSaveBtn();
        });
    
        $(':password').keypress(function(e) { // password written
            enableSaveBtn();
        });
        $(':password').bind('paste', function(e) { // password pasted
            enableSaveBtn();
        });
    
    
    }
    

  4. 4.때문에 jQuery를 1.7 $ CSTE 연구진 () 기준으로 $ .keydown () 등 같은 단축키를 사용하지 않는, 입력에 선택한 이벤트를 바인딩 $ CSTE 연구진 ()를 사용하여 이벤트 핸들러 (여기 참조 첨부 할 선호하는 방법입니다 : http://api.jquery.com/on/ 및 http://api.jquery.com/bind/).

    때문에 jQuery를 1.7 $ CSTE 연구진 () 기준으로 $ .keydown () 등 같은 단축키를 사용하지 않는, 입력에 선택한 이벤트를 바인딩 $ CSTE 연구진 ()를 사용하여 이벤트 핸들러 (여기 참조 첨부 할 선호하는 방법입니다 : http://api.jquery.com/on/ 및 http://api.jquery.com/bind/).

    (다른 사람의 사이에서) () .keydown $ 것은 $ .bind ( '를 keyDown'), 및 $ .bind () 단지 바로 가기입니다 것은 무엇 $ CSTE 연구진은 ()로 대체합니다.

    지금까지 특별히를 keyDown에 이벤트를 발생 필요가없는 나는 알고 있어요으로, 귀하의 질문에 대답하기 위해, 변경 이벤트가 당신을 위해 트릭을 할해야합니다.

    $('element').on('change', function(){
        console.log('change');
    });
    

    주석 아래에 대응하기 위해, 자바 스크립트 변경 이벤트는 여기에 설명되어 있습니다 : https://developer.mozilla.org/en-US/docs/Web/Events/change

    여기 jQuery를 사용하여 입력 요소의 변화 이벤트 작업의 동작 예이다 http://jsfiddle.net/p1m4xh08/


  5. 5.당신은 jQuery를 변화를 사용할 수 있습니다 () 함수

    당신은 jQuery를 변화를 사용할 수 있습니다 () 함수

    $('input').change(function(){
      //your codes
    });
    

    http://api.jquery.com/change/ : API를 페이지에 그것을 사용하는 방법에 대한 사례가있다

  6. from https://stackoverflow.com/questions/12797700/jquery-detect-change-in-input-field by cc-by-sa and MIT license