2010-07-22 4 views
1
$('#foo').live('keyup', function (e) { 
    var input = $(this).val(); 
    // code to process input 
}); 

게시물 양식에 사용되며 문서가 준비되면 live() 내부에서 코드를 실행해야합니다. 주요 언론을 기다리는 것 외에 다른 방법이 있을까요? 어떻게 문서가 준비 후 KeyUp 이벤트 를 연결하는 요구가있는 경우.live() 문서 내부에서 코드를 실행하는 방법?

+0

코드'.live()'이 실행될 때에 지정된 이벤트이'.live()'귀하의 경우, 발생'keyup' 즉, 키를 누를 및 해제 될 때, 그래서 저는 여러분이 무엇을 요구하고 있는지 그리고이 문서가 어떻게 준비되어 있는지에 대해 정말로 모릅니다. –

답변

2
$(function() { 
    // add the event 
    $('#foo').live('keyup', function (e) { 
    var input = $(this).val(); 
     // code to process input 
    }); 
    $('#foo').trigger('keyup'); //trigger the event 
}); 
+0

오, 와우. 이것은 우아합니다. 그 중 두 명이있을 때 누가 옳은 대답을 얻는 지 어떻게 결정해야합니까? – randomguy

+0

단지 당신이 가장 좋아하는 것을 선택하십시오 :) 하나의 노트, 최신 jQuery를 사용하는 경우 .delegate를 살펴보면, .live보다 더 좋을 수도 있습니다. –

+0

$ ('# foo') .keyup() : 동일합니다. .trigger와 같지만 .trigger는 더 이해하기 쉽습니다 (나중에 이해하기 쉬운 코드). –

0

, 이것은 sollution입니다 :

jQuery(document).ready(function($) { 

    $('#foo').live('keyup', function (e) { 
     var input = $(this).val(); 
     // code to process input 
    }); 

}); 

그러나이 아무 기능이없는 것 jQuery.live을 히빙의 모든 생각 때문에 각 셀렉터에 자동으로 바인드하는 것입니다. 현재와 미래는입니다.

또한 선택자로 ID를 지정하고 있습니다. id는 요소에 고유해야합니다. ID가 foo 인 여러 요소에 바인딩 할 수 있다는 것은 기술적으로 부정확합니다.

1

keyup에서 실행되는 코드의 일부가 페이지로드시 한 번 실행되기를 원하는 것처럼 들리는 것 같습니다.

그런 경우 해당 코드를 다른 함수 안에 넣고 페이지로드시와 .live() 처리기 내에서 호출 할 수 있습니다. 내부

function someFunction() { 
    // code to run 
} 

$('#foo').live('keyup', function (e) { 
    var input = $(this).val(); 
    // run on keyup 
    someFunction(); 
}); 

    // run on page load 
someFunction(); 
+0

이것은 내가 쫓아 간거야! 감사! – randomguy

+0

당신을 진심으로 환영합니다. : o) 답변의 왼쪽에있는 체크 표시를 클릭하여 이전 질문에 대한 답변을 "수락하지"않은 것 같습니다. 이전 질문으로 돌아가서 자신에게 맞는 솔루션을 확인하십시오. : o) http://stackoverflow.com/users/377920/randomguy – user113716

+1

죄송합니다.하지만 구체적으로 ... 나는 라이브와 Mark의 답변 내에서 코드를 트리거하는 법을 물었습니다. 솔루션이 제대로 작동하더라도이 질문에 좀 더 엄격하게 답하는 것 같습니다. 음 .. 네. 글쎄, 여기에 몇 가지 명성이있다. 롤. – randomguy

관련 문제