2010-12-22 3 views
0

JQuery로 테이블 열을 숨기거나 표시해야합니다. 열심히하지 해답을 찾을 수 있습니다 :JQuery로 id로 테이블 열 숨기기

$('#btnHide').click(function() { 
    $('td:nth-child(2),th:nth-child(2)').toggle(); 
}); 

아주 잘 작동하지만 하나 개의 제약 조건이 : 당신이 열 번호를 제공해야 할 몇 가지 연구 후에, 나는 그처럼 보이는 뭔가를 발견했다.
제 경우에는 상황이 더욱 복잡해집니다. 표시되는 열은 사용자가 누구인지에 따라 다릅니다 (예 : 단순한 사용자 : 1, 3, 5 열을 볼 수 있습니다). Admid 사용자 : 모든 열을 표시합니다.
PHP로 설정됩니다. 더 많은 보안을위한 규칙. 따라서 관리자 인 경우 숫자가 "3"이고 사용자가 "2"인 내 컬럼 "article"이 생깁니다. 해결책은

=> 열 번호 대신 열 ID를 사용하는 솔루션이 필요합니다. 나는 조금 둘러 봤지만 대답을 찾을 수 없었다. 누구나 아이디어가 있습니까?

감사

+0

"id"값의 출처는 어디입니까? ''헤더 행? – Pointy

답변

1

당신은 특정 컬럼의 인덱스를 얻기 위해 ID를 사용할 수 있습니다.

var $col_header = $("th#article"), 
    col_index = $("#someTable th").index($col_header[0]);

같은

뭔가 당신이 이미 발견 한 것과 그 인덱스를 통합 할 수 있습니다.

+0

답장을 보내 주셔서 감사합니다. 정말 오랜 시간이 걸려서 죄송합니다. "새로운 답변을 보내 주시면 알림"을 ​​잊어 버리 셨습니다 ... -_- ' –

+0

어쨌든. 우리는 다른 솔루션 (제한된 시간의 라이브 프로젝트 ... ^^)을 찾아야했지만 귀하의 논평을 염두에 두겠습니다. 고마워요. =) –

+0

.indexOf()는 jQuery 객체에서 사용할 수 없습니다. – Craig