2012-09-26 3 views
0

fixedTableHeader를 만드는 데 문제가 있습니다. 나는 간단한 테스트에서 잘 작동하는 jQuery 플러그인을 발견했다. 하지만 WebControl에 포함 된 리소스로 포함시켜야합니다. WebControl에서 jquery 플러그인이로드되었지만 'inaccesible'입니다.

그래서 I'v은 assembly.cs 파일에서 스크립트를 등록 할 수 그들을 설정 '포함 된 리소스'는 WebControl에서

그들은 다음과 같이 등록 :

this.Page.ClientScript.RegisterClientScriptInclude(this.GetType(), "jquery", Page.ClientScript.GetWebResourceUrl(this.GetType(), "LRGrid.jquery_min.js")); 

var fixedScript = Page.ClientScript.GetWebResourceUrl(this.GetType(), "LRGrid.jquery_fixedheadertable.js"); 

this.Page.ClientScript.RegisterClientScriptInclude(this.GetType(), "fixedheadertable", fixedScript); 

this.Page.ClientScript.RegisterClientScriptInclude(this.GetType(), "jquery", Page.ClientScript.GetWebResourceUrl(this.GetType(), "LRGrid.jquery.tablescroll.js")); 

다음 순서로 전화 스크립트 내가 할 :

Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "SetTable" + ClientID, "; $(document).ready(function(){$('table#" + ClientID + "').fixedHeaderTable({ footer: false, cloneHeadToFoot: false, fixedColumn: false });});", true); 

을 지금은 파이어 폭스에서 테스트 만약 내가 얻을

,321 0

IE9는 나에게 말한다 method not supported

내가 방화 광 또는 IE 개발자 도구 모음을 사용하고 스크립트가로드되는 것을 알 수있다?!?!? 왜 그것이 유용하지 않은지에 관한 어떤 생각?

편집 : 이제 스크립트를 마크 업에 직접로드하려고 시도했습니다. 그러면 의도 한대로 작동합니다. 이런, 님이 ... 그래서 오류가 다른 파일에 위치한 -하지만 최대한 빨리 시도로 실패 포함 된 리소스를 사용하여로드 및 기능

$(document).ready(function() { 
    if(jQuery.isFunction($('table#" + ClientID + "').fixedTableHeader)){ 
     $('table#" + ClientID + "').fixedTableHeader({ height:200, width:'100%' }); 
    }else{ 
     alert('unable to load scroll script'); 
    } 
}); 
+0

당신은 미국을 표시 할 수 있습니다 당신의 일부가 P는 사용할 수

if (!Page.ClientScript.IsClientScriptIncludeRegistered(typeof(LRGrid.LRGrid), "jquery")) { Page.ClientScript.RegisterClientScriptInclude( typeof (WebPageBase), "jQuery", ResolveUrl("~/Scripts/jquery-1.4.1.js")); } 

희망 :베이스 페이지가 LRGrid의 지식,하지만 주변이 아닌 다른 방법을 ... 가지고 있기 때문에

그래서 여기에 솔루션입니다 요소가 나타나는 곳에 렌더링 된 HTML 스 니펫? 내 생각은 일치하려는 ID가 스크립트가 찾고있는 것과 다르게 구성되었다는 것입니다. –

+0

확실한 @RobAllen - 이것을 해결하는 데 도움이되는 모든 것) 테이블 마크 업은 다음과 같습니다. '

woodbase

답변

0

좋아요로 fixedTableHeader을 인식하지 않습니다!

나는 이미베이스 페이지에서 jQuery를로드하는,

Page.ClientScript.RegisterClientScriptInclude(
    typeof (WebPageBase), "jQuery", ResolveUrl("~/Scripts/jquery-1.4.1.js")); 

내가 거기에 jQuery를로드하려고 할 때 내 컨트롤이 충돌 ... 지금은하지 않았다) (또는 다른 사람이 한 번했다) 어느 위치에서든 jQuery 초기화를 제거한다. 그래서 BasePage를 조건부로로드하기로 결정했습니다.