《날카로운 jQuery》 요점 귀납 (4) jQuery가 폼, 표에 대한 조작 및 더 많은 응용 (중: 표 응용)

20350 단어 jquery
《날카로운 jQuery》 요점 귀납 (4) jQuery가 폼, 표에 대한 조작 및 더 많은 응용 (중: 표 응용)
 
2. 표 응용
 
1 표 칸막이 변색 (:odd 및: 이벤트 선택기 P157)

  
    
$( function (){
$(
" tr:odd " ).addClass( " odd " ); //
$( " tr:even " ).addClass( " even " ); // (:odd :even 0 )
})

 
2 지정한 텍스트 내용을 포함하는 줄의 변색을 설정합니다 (: contains 선택기 P158)

  
    
$( function (){
$(
" tr:contains(' ') " ).addClass( " selected " );
})

 
3 단일 선택 상자에서 테이블 행 강조(find() 방법을 제어합니다.radio,: checked,:has 선택기 P158)

  
    
// DOM :<table><tr><td><input type="radio" /></td></tr>...</table>
$( function (){
$(
" tr " ).click( function (){
$(
this ).addClass( " selected " ).siblings().removeClass( " selected " ).end()
.find( " :radio " ).attr( " checked " , true );
$(
" table :radio:checked " ).parent().parent().addClass( " selected " );
//
//
$("table :radio:checked").parent("tr").addClass("selected");
//
$("tbody>tr:has(:checked)").addClass("selected");
});
})

 
4 복선상자는 표 줄의 하이라이트를 제어한다(:has 선택기,hasClass() 방법으로 P160을 판단한다)

  
    
$( " tr:has(:checked) " ).addClass( " selected " ); //


$(
" tr " ).click( function (){
if ($( this ).hasClass( " selected " )){ //
$( this ).removeClass( " selected " ).find( " :checkbox " ).attr( " checked " , false );
}
else {
$(
this ).addClass( " selected " ).find( " :checkbox " ).attr( " checked " , true );
}
})
//
$( " tr " ).click( function (){
var hasSelected = $( this ).hasClass( " selected " );
$(
this )[hasSelected ? " removeClass " : " addClass " ]( " selected " )
.find( " :checkbox " ).attr( " checked " , ! hasSelected);
// :$(this)["addClass"]("selected"); $(this).addClass("selected");
})

 
5 표 전개 닫기(toggleClass()와 toggle() 방법;P161 속성 팁 사용) DOM은 다음과 같습니다.

  
    
< table >
< tr class ="parent" id ="row_01" >< td > 1 </ td ></ tr >
< tr class ="child_row_01" >< td > 1 </ td ></ tr >
< tr class ="parent" id ="row_02" >< td > 2 </ td ></ tr >
< tr class ="child_row_02" >< td > 2 </ td ></ tr >
</ table >

 

  
    
$( function (){
$(
" tr.parent " ).click( function (){
$(
this ).toggleClass( " selected " ).siblings( " .child_ " + this .id).toggle();
});
})

 
6 테이블 컨텐트 필터링 디스플레이(filter) 메서드 P163)

  
    
$( function (){
$(
" tr " ).hide().filter( " :contains(' ') " ).show();
})

 
7 테이블 컨텐트를 입력으로 필터링(P163)

  
    
$( function (){
$(
" #filterName " ).keyup( function (){
$(
" tr " ).hide().filter( " :contains(' " + ($( this ).val()) + " ') " ).show();
}).keyup();
// DOM , ,
})

좋은 웹페이지 즐겨찾기