2010-07-01 3 views
0

jQuery에서 요소를 대상으로 지정할 수 없습니다. 작동jQuery : targetting id 문제

첫 번째 예 :

$(document).ready(function() 
{ 
    $('#Models').hide(); 
}); 

두 번째 예를 실패

$(document).ready(function() 
    { 
     $('#Make').bind('change',function() 
     { 
      $('#Models').hide();   
     }); 
    }); 

을이 경우는 "#Models는"전혀 숨길 수 없습니다. 좋은 해결책을 찾을 수 없습니다. 어떤 범위 지정 문제가 있습니까?

도움이나 단서를 제공해 주셔서 감사합니다. 당신이 '는 확신합니다 - 그것은 작동해야처럼 보이는

<div class="search-row"> 
     <div class="search-flag"> 
     </div> 
     <select id="Make" name="Make"> 
      <option value="">Marque</option> 
      <? 
      $marques = Marque::getList(); 
      foreach($marques as $m) { 
      ?> 
       <option value="<?=$m?>"><?=$m?></option> 
      <? } ?> 
     </select> 
    </div> 
    <br class="clear" /> 
    <div class="search-row"> 
     <div class="search-flag"> 
     </div> 
     <script type='text/javascript'> 
     $(document).ready(function() 
     { 
      $('#Make').change(function() 
      { 
       alert("test"); 
       $('#Models').hide(); 
      });   
     }); 
     </script> 

     <select name="Models_name" id="Models"> 
      <option value="all"> 
       All 
      </option> 
     </select> 
    </div> 

(내 모든 코드에서 나는 하나 개의 ID가 불렀다 "모델")

+2

HTML의 모양은 어떻습니까? –

+1

정상적으로 작동하는 것으로 보입니다. 바이올린을 확인하십시오 : http://jsfiddle.net/HUwka/ – Jamiec

+0

'change' 이벤트가 트리거되지 않았습니까? 'alert ('hi')'로'$ ('# Models'). hide();를 바꾸고 경고가 나타나는지 확인하십시오. – Iacopo

답변

0

가 트리거되지 않습니다 #Make의 변화 핸들러처럼 보인다 :

이 사용 해보세요. #Make는 어떤 요소 유형입니까?

+3

이것은 코멘트로 게시되어 있어야합니다. – GenericTypeTea

+0

# Make는 이 두 개 이상 있습니까? – xil3

+0

아니요 하나의 "모델"id 만 있습니다. – Boun

0

캐싱 문제 일 수 있습니까? 귀하의 코드는 여기에서 잘 실행됩니다 ... 현재 HTML 버전을 검사하여 원본을 검사하십시오.

+0

마지막 리소스로서, 그렇지 않은 경우, 생성 된 HTML 전체를 게시하려고 시도합니다. –

+0

당신이 맞을지도 모릅니다. 새로운 테스트 페이지에서이 코드 부분을 시도해 봅니다. 문제가 HTML에서 나올 수 있도록 모든 것이 올바르게 진행됩니다. 이제 HTML을 확인하고 모든 사람들에게이 사실을 알립니다. – Boun