2013-01-09 4 views
2

jQuery를 처음 사용하고 드롭 다운 상자에서 변경 이벤트를 트리거하는 데 문제가 있습니다.jQuery 드롭 다운 변경 이벤트 트리거 없음

이 내 HTML 마크 업

<select id="mini_bookinglocation" name="mini_bookinglocation"> 
    <option selected="selected" value="">Please Select</option> 
</select> 

입니다입니다 내 jQuery

$("#mini_bookinglocation").change(function() 
{ 
    alert(" test "); 
}); 

나는 외부뿐만 아니라 문서 준비 블록 내부에이를 넣어하지만 난이 일을 얻을 수없는 것 같습니다 시도 . 나는 경고가 나오지 않는다.

또한 문서 준비 섹션과 함께이 기능을 유지해야합니까?

아무도 도와 줄 수 있습니까?

감사

그냥 위의 값이 jQuery를 사용하여 동적으로 통과 할 것을 추가 할 수 있습니다.

+1

브라우저 콘솔에 오류가 있습니까? – phnkha

+2

다른 옵션이 없습니다. 그렇다면 어떻게하면 효과가 떨어졌을까요? –

+0

select 요소에 더 많은 옵션을 추가합니다. – Amyth

답변

0

입니다. 그것은 내 코드에서 jQuery를 한 곳에서 사용하고 $를 다른 장소에서 사용하기 때문입니다. 나는 이걸 구글로 할 수 있었고 jQuery로 모든 것을 바꿨고 모든 $를 제거했다. 전체 코드를 표시하지 않아서 미안하지만 모든 대답을 읽음으로써 많은 것을 배울 수있었습니다.

도움을 주셔서 감사합니다.

5

값이 변경 될 때 변경 이벤트가 발생하기 때문에 더 많은 옵션을 추가해보십시오. 귀하의 경우에는 가치에 변화가 없습니다. docs

변경 이벤트에서

<select id="mini_bookinglocation" name="mini_bookinglocation"> 
    <option selected="selected" value="">Please Select</option> 
    <option value="1">1</option> 
    <option value="2">2</option> 
    </select> 

이 요소 값의 변화로 전송된다. 선택 상자, 확인란 및 라디오 버튼의 경우 사용자가 마우스를 사용하여 선택하면 즉시 이 발생하지만 다른 요소 유형 인 의 경우 이벤트가 지연되어 해당 요소가 포커스를 잃을 때까지 지연됩니다. .

또한 문서 준비 섹션과 함께이 기능을 유지해야합니까?

는 아니, 이벤트가 시작되기 때문에 변화가

DEMO

+0

@Amyth 내 대답을 편집했습니다 – Sibu

8

을 발생 때 드롭 다운에서 하나의 값을 가질 준비 기능 아래에 코드를 삽입 할 필요가 없습니다. 그래서 가치는 변하지 않습니다. 그 이유는 .change가 호출되지 않습니다. 선택 상자에 옵션을 추가해보십시오.

또한 이어야합니다.document.ready 안에 jQuery 코드를 써야합니다. 문서 준비 기능 여기

<html> 
    <head> 
     <script type="text/javascript" src="http://code.jquery.com/jquery.min.js"></script> 
     <script type="text/javascript"> 

     $(document).ready(function() { 
      $("#mini_bookinglocation").change(function() { 
       alert(" test "); 
      }); 
     }); 

     </script> 
    </head> 
    <body> 
     <select id="mini_bookinglocation" name="mini_bookinglocation"> 
     <option selected="selected" value="">Please Select</option> 
     <option value="A">Option A</option> 
     <option value="B">Option B</option> 
     <option value="C">Option C</option> 
     <option value="D">Option D</option> 
     <option value="E">Option E</option> 
     </select> 
    </body> 
</html> 

에서

+0

_ "항상 jQuery 코드를 document.ready 안에 써야합니다."_ - 항상? 기필코 아니다. 문제의 요소 뒤에있는 스크립트 블록에 나타나면 작동합니다. – nnnnnn

+0

은 브라우저 콘솔에서 오류를 볼 수 없습니다. – BenW

1

지정 변경 이벤트 리스너 내가 문제가 발견되는 example

관련 문제