2011-07-16 4 views
3

코드에서 it'e dir 특성을 변경하고 싶은 div 요소가 있습니다. 문제는 div에서 runat=server 속성을 설정할 수 없어 코드에서 액세스 할 수 없다는 것입니다.코드에서 div 요소에 액세스

asp.net, C#, framework 4.0을 사용 중입니다.

아이디어가 있으십니까?

감사합니다.

+3

왜 runat = "server"를 설정할 수 없다고합니까? WebForms을 기억할 때 가능합니다 (타입이 지정되지 않은 HtmlControl 객체가 생성됩니다). – oryol

+0

나는이 div를 그리거 붕장 벌레로 만들었고 나는이 그리드에서 반복하고 그리드에서 물건을 바꾼다. 이 div가 runat = server로 설정되면이 루프가 엉망이됩니다. 이유를 모르겠다 .. –

+0

@ Itay.B : 그렇다면 div에서 runat = server가 그리드의 루프를 엉망으로 만드는 이유를 알아보기 위해 별도의 질문을 시작하는 것이 좋습니다. – Heinzi

답변

4

그래서 다음 작업을 수행 할 수있는이 작업을 수행 할 수 원하는 경우

1

예, 서버의 클라이언트 요소에만 액세스 할 수 있습니다 (asp.net은 서버 지향 프레임 워크입니다). 클라이언트 컨트롤은 html로 된 Literal 컨트롤로 컴파일됩니다.

runat="server" 속성에 div을 설정하지 않으려면 register client script으로 div 콘텐츠를 편집 할 수 있습니다.
runat="server" 속성을 설정하고 ID="YOUR_DIV_ID_HERE" 속성을 설정하면 YOUR_DIV_ID_HERE 이름 아래의 코드에서 액세스 할 수 있습니다.

0

Jquery와 콜백 함수를 사용하여 서버 측 함수를 호출하십시오.

0

HTML 요소에 runat = "server"속성을 설정할 수 있습니다. 그냥 로컬 데모 않았다, 잘 작동합니다. HtmlGenericControl (http://msdn.microsoft.com/en-us/library/7512d0d0(v=VS.100).aspx)으로 표시됩니다.

편집 : runat = "server"를 사용하여 코드에서 요소에 액세스 할 수 없다고 가정 해보십시오. html 렌더링이 달라지지 않아서 왜 이것이 문제가 될지 모르겠습니다. 어쩌면 그것은 클라이언트 측 id가 변경된 요소와 관련이있을 것입니다. 이것에 의존한다면, 당신은 당신의 div에 대해 ClientIdMode = Static으로 설정할 수 있습니다.

<div dir='<%= GetDir() %>'> 
    Your text 
</div> 

뒤에 코드에서 : 당신은 당신이 runat="server"에 사업부를 설정하지 않는 경우도

<div><%= your server variable %> </div> 
1

다음 코드를 사용하여 방향을 설정할 수 있습니다.

if(You Condition) 
     { 
      return "ltr"; 
     } 
     else 
     { 
      return "rtl"; 
     } 
관련 문제