2011-01-19 2 views
0

내 페이지의 일부 체크 상자 스타일을 지정하는 jquery 코드가 있습니다. 나는 테이블도 가지고있다. 이 테이블은 페이지가로드 될 때 모든 행을 표시하지 않으므로 Ajax 요청으로 나머지 행을로드해야합니다. 문제는 해당 아약스로드 된 행의 확인란이 스타일이 적용되지 않는다는 것입니다. 아약스로로드 된 체크 박스에 스타일을 적용하는 체크 박스를 상속하고 싶습니다.아약스로로드 할 때 jquery 코드 상속

답변

0

일단 새 체크 박스가로드되면 jQuery 코드를 트리거하여 해당 체크 박스의 스타일을 지정해야합니다. 귀하의 코드 나 마크 업을 보지 않고는 직접적인 대답을 줄 수는 없지만, 예를 들어, jQuery 코드가 체크 박스에 클래스를 추가한다고 가정하십시오 (아마 모든 것의 일부로, 그렇지 않은 경우 아마 CSS 스타일링).

var cbsToStyle = $(":checkbox:not(.foo)"); 

을 ... 다음 cbsToStyle 목록 스타일 : 그럼 당신은 단순히 코드가 그 확인란을 두십시오있는 것입니다.

(live copy) :

HTML (분명히 당신과 동일하지만, 나타내는 것은 아닙니다) : jQuery를 사용하여

<div id='container'> 
    <label><input type='checkbox'>Original checkbox</label> 
    <br><label><input type='checkbox'>Original checkbox</label> 
    <br><label><input type='checkbox'>Original checkbox</label> 
</div> 

자바 스크립트 : styleCheckboxes 가장입니다

jQuery(function($) { 
    var timer = 0, 
     counter = 4; 

    styleCheckboxes(); 
    timer = setInterval(loadCheckboxes, 1000); 

    function loadCheckboxes() { 
    var index; 

    if (--counter < 0) { 
     // Done 
     cancelInterval(timer); 
     timer = 0; 
    } 
    else { 
     // Mimic adding three checkboxes 
     for (index = 0; index < 3; ++index) { 
     $("<br><label><input type='checkbox'>Another checkbox</label>").appendTo('#container'); 
     } 

     // Re-trigger the styling code 
     styleCheckboxes(); 
    } 
    } 

    function styleCheckboxes() { 
    // Get only those we haven't styled before and style them. 
    // Note that the class is used as a marker (you might _also_ 
    // use it to apply some style rules) 
    $(":checkbox:not(.styled)").addClass("styled").css("width", "40px"); 
    } 

});​ 

... 관련 비트.

+0

쉽습니다. 감사! – Emil

+0

@Emil : 걱정하지 마세요, 기꺼이 도와 줬습니다. –

관련 문제