외부 이벤트를 클릭하여 첨부 I가 내 ASPX 페이지에서 다음 버튼 - 그러나 내 global.js에 파일을이 이벤트를 이동하려면, 예상대로 작동하고 경고를 제공페이지
$('#btnHello').click(function() {
alert('Hi there');
});
똑같은 논리로 ASPX 페이지 상단에서이 파일을 참조하지만 이벤트가 실행되지 않습니다. 이것을 어떻게 할 수 있습니까?
외부 이벤트를 클릭하여 첨부 I가 내 ASPX 페이지에서 다음 버튼 - 그러나 내 global.js에 파일을이 이벤트를 이동하려면, 예상대로 작동하고 경고를 제공페이지
$('#btnHello').click(function() {
alert('Hi there');
});
똑같은 논리로 ASPX 페이지 상단에서이 파일을 참조하지만 이벤트가 실행되지 않습니다. 이것을 어떻게 할 수 있습니까?
와 코드를 포장하기 요소 #btnHello
.
그러나 실행할 때 #btnHello
이로드되지 않았습니다. 그것은 아직 존재하지 않습니다. 그래서 아무것도 연결되지 않습니다.
문서가 로딩이 완료 될 때까지 당신이 코드의 실행을 연기 맨 끝에 코드를 실행하거나 (더 안정적으로, 나는 생각한다)에 의해 중이 문제를 가져올 수 있습니다
$(function() {
$('#btnHello').click(function() {
alert('Hi there');
});
});
당신은이를 둘 것 global.js하지만 페이지가 완전히로드 될 때까지 실행되지 않습니다.
사용 이벤트 위임 :
$(<parent_of_btnHello>).on("click", "#btnHello", function() {
alert('Hi there');
});
..where <parent_of_btnHello>
핸들러를 추가 할 때로드 된 요소해야한다. 예를 들어 :
$("body").on("click", "#btnHello", function() {
alert('Hi there');
});
또한 $(document)
또는 $("html")
또는 버튼의 용기 일 수있다, 즉, global.js
파일에서 코드가 실행을로드됩니다.
this answer도 확인할 수 있습니다.
또 다른 방법은 $(document).ready(function() { ... });
의 내부에 초기 코드를 삽입하는 것입니다
$(document).ready(function() {
$('#btnHello').click(function() {
alert('Hi there');
});
});
대부분의 경우이 이벤트를 결합하려고하는 이러한 요소가 없다. 당신은 당신의 경고 기능을 접선하고
$('#btnHello').click(function() {
alert('Hi there');
});
:
봅니다 당신이 실행하는 것은 매우 초기에 기능입니다 document.ready
$(function() {
$('#btnHello').click(function() {
alert('Hi there');
});
})