2017-10-16 15 views
1

내 페이지에 요소 테이블이 있습니다. 각 행에는 데이터 태그 ("reckey"로 식별 됨)가 있는데, 그 이유는 데이터베이스가 현장에 오기 몇 년 전에 설정 되었기 때문입니다. 테이블을 만들 때 자바 스크립트를 밟아 보면 태그가 올바르게 설정되어있는 것을 볼 수 있습니다. 즉,이 줄은jquery 데이터 태그가 값을 반환하지 않습니다.

$("#tblActivities tbody tr:first").data("reckey") 

의 값을 '122157'로 반환합니다. 그러나이 행을 통해 행을 검색하려고 할 때 :

$("#tblActivities tbody tr[data-reckey='122157']") 

브라우저가 정의되지 않음을 나타냅니다. 또한

$("#tblActivities tbody tr[attr-data-reckey='122157']") 

로 시도하고 S의 & g의, 나는 누군가가 내가 부족 걸 보여 주시겠습니까

$("#tblActivities tbody tr[data-reckey]"), which still returned undefined. 

을 시도 단지에 대한? 단순한 문법 오류라면별로 놀랍지 않을 것입니다. 비록 내가 단지 완전한 바보처럼 느껴지지 않는다면 더 깊기를 바랍니다.

감사합니다,

당신은 자바 스크립트를 사용하여 데이터 속성을 추가하고 있기 때문에
+1

은 javascript 또는 일반 html'data-reckey = 122157'을 통해 추가 된 데이터입니까? 또한 jquery의 어떤 버전을 사용하고 있습니까? –

+1

https://stackoverflow.com/a/11673313/123422? –

+0

@ UnamataSanatarai, javascript를 통해 데이터 태그를 추가하고 있지만 HTML을 작성하는 문자열에 포함하도록 변경할 수 있습니다. 버전은 2.2.0을 사용하고 있습니다. – mforbes

답변

1

, 당신의 $('[data-reckey="122157"]')을 통해 (즉, 직접 선택할 수 없습니다 jQuery 오브젝트 내부 그것은 jQuery를 저장에게 데이터가 아닌 HTML로 .

그래서, 당신이 할 수있는 경우에, 하나 같이 예를 들어, HTML에 직접 data-reckey=""를 배치하거나, ​​요소를 반복 :

$("#tblActivities tbody tr").each(function() { 
    if ($(this).data('reckey') === '122157') { 
     // found the element... 
    } 
}); 
0

을 경우 다른 사람 검색에서 확인을 위해이 같은 문제에 대해 나중에 : html이 나중에 생성 될 때 jquery를 통해 변경하는 대신 데이터 태그를 포함하는 것이 솔루션입니다.