2014-11-07 4 views
0

저는 JQuery와 JS를 처음 사용합니다.datepicker의 부모 요소 선택

나는 내부에 JQuery datepicker를 사용하는 요소가 있습니다. datepicker select 이벤트에서 부모 <td> 요소에 대한 참조를 얻고 싶습니다. 어떻게해야합니까? 미리 감사드립니다.

<td> 
    <input type='text'/> 
</td> 
+0

PLZ 공유와 관계있는 HTML 코드도 .. –

+0

이 http://api.jqueryui.com/datepicker/ 모든 튜토리얼이 페이지를 확인하고 jQuery를 DatePicker에서에 ... – MarsOne

+2

확인이를 너무 도와주세요 http://api.jquery.com/parent/를 참조하십시오 . jQuery parent() http://api.jquery.com/parent/ – eyetea

답변

2

당신은 parent()를 사용할 수 있지만 (DOM은 변경의 경우) closest을 사용하는 것이 안전합니다 :

을 선택 이벤트 this 안에는 datepicker 요소 여야합니다.

var parentTD = $(this).closest('td'); 

플러그인의 숫자는 그들이에 연결되어 있지만 closest이 조상에게 일치하는 항목을 찾아 때까지 을 검색합니다 요소 주위의 DOM을 변경하는 습관을 가지고있다.

JSFiddle : http://jsfiddle.net/NdN9H/52/

0

업데이트 : 부모가 당신이 $(this)id

를 사용할 필요가 없습니다 사용하여 날짜 선택기 요소에 액세스 할 수있는 이벤트 핸들러에서 선택해야합니다으로, 주석에서 설명하고있는 바와 같이

당신은 당신의 입력 요소에 ID를 넣어 시도해야합니다 :

 <td> 
      <input id="mydatepicker" type='text'/> 
     </td> 

자바 스크립트에서 당신이을 사용할 수 있습니다 이 예상대로 작동하지 않습니다 날짜 선택기 플러그인은 다른 요소에 input 요소 싸서 수 있습니다 경우기능은 사용자의 입력 요소

$("#mydatepicker").parent() 

의 부모를 선택합니다. 브라우저에서 DOM을 검사하여 요소를 둘러싼 최종 DOM 구조를 찾아야합니다.

+1

타겟팅 문제가 발생할 때마다 왜 누군가가 'ID 추가'솔루션을 제공합니까?! –

+0

네가 맞다. 다른 해결책이 더 좋다. OP에서 그가'select ($) this '를 사용하여 datepicker에 대한 참조를 가지고있는 곳에서이 작업을하고 싶다고 대답 한 부분을 놓쳤다. –

+0

알았어. 그때 당신이 한 일) –