2010-01-03 6 views
6

나는 ASP.NET의 텍스트 컨트롤 "FROMDATE를"누구의 visible 속성을 false로 설정되어 있습니다,하지만 난 CSS 속성JavaScript 컨트롤에서 visible = false 인 ASP.NET 컨트롤을 사용할 수 없습니까?

element1.style.display = "none"; // hides the element 
element1.style.display = ""; // shows the element 

를 사용하여 가시성 속성을 전환 할 수 있도록 자바 스크립트 클라이언트 측을 원하지만 시도 할 때 그게 내가 필요로하는 행동은 아니지만 나는 "FROMDATE"ASP.NET 컨트롤의 기본 참으로 visble와 동일한 코드를 =하려고하면 텍스트 상자를 얻기 위해, 내가

var element1 = document.getElementById("FromDate"); 

에 널 얻을, 그것은 (작동)

아이디어가 있으십니까?

답변

13

,이 같은 CSS를 시도 할 수 있습니다 : CSS 이해하기 쉽게와 내가 컨트롤을 숨기고 생각

<asp:somecontrol id="FromDate" style="display:none" /> 

.

+2

코드 숨김 : somecontrol.Style ("display") = "none" –

17

Visible = false를 컨트롤에 설정하면 렌더링되지 않습니다. 즉, 페이지에 전송 된 해당 컨트롤의 HTML 표현이 없음을 의미합니다. 스타일 만 설정하십시오.

당신은 디스플레이와 스타일을 설정할 수 있습니다 이 같은 서버 측 코드에서 없음 : 없음으로 표시 = false로 설정된 style.display를 설정하는 대신

FromDate.Style.Add(HtmlTextWriterStyle.Display, "none") 
+0

visible이 false 일 때 이벤트를 호출 할 수 있습니까? 보안 문제에 대한 질문. –

+0

@Ufuk : 어떤 종류의 이벤트? 클라이언트에는 아무 것도 없기 때문에 JavaScript 이벤트를 호출 할 수 없습니다. 서버 측 이벤트를 여전히 호출 할 수 있습니다 (해당 Visible 속성이 false로 설정된 경우 이벤트가 발생하지 않도록 컨트롤이 작성되었을 수 있음). –

+0

버튼 클릭과 같은 서버 측 이벤트. 누군가 포스트 백을 망친다면 그 이벤트를 트리거 할 수 있습니까? –

2

을, 그 방법은 요소에 대해 아직 거기 조작하는 JavaScript. 이 컨트롤을 숨기려면

관련 문제