2012-02-07 2 views
0

Texbox Textmode = "Multiline"또는 html textarea로 사용자 정의 컨트롤을 만들어야합니다.텍스트에 맞게 텍스트 상자/텍스트 영역 크기 조정

편집 모드에서는 텍스트 상자/텍스트 영역의 크기를 조정할 수 있습니다. 이것에 대해 jquery 플러그인을 사용할 수 있습니다. 그러나 읽기 전용 모드에서는이 Textbox/textarea가 비활성화되어 텍스트에 맞게 자동으로 크기를 조정해야합니다 (높이). 텍스트가 페이지를 차지하는 경우에도 마찬가지입니다. 텍스트 상자/텍스트 영역을 읽기 전용 모드로 숨기고 div에 텍스트를 표시 할 수 있지만 편집 및 읽기 전용 페이지를 계속 보이게하고 싶습니다.

아이디어가 있으십니까?

+0

[css-tricks] (http://css-tricks.com/textarea-tricks/)에 도움이 될지 모르겠다. 숫자 7을 참조하십시오. –

답변

1

읽기 전용 모드에서 텍스트 영역/입력을 사용하는 이유 - js를 사용하여 해당 컨트롤과 DIV 또는 P 태그 (텍스트 표시) 사이를 앞뒤로 전환하는 대신 단순히 높이를 설정하지 않으면 height:auto) 상자가 자동으로 모든 텍스트를 포함하도록 크기가 지정됩니까?

또한 주변 콘텐츠가 허용하지 않는 한 텍스트 크기를 사용자에게 맞게 조정할 수 있습니다. http://davidwalsh.name/textarea-resize

+0

편집/읽기 전용 모드에서 페이지 모양이 다르기 때문에 좋지 않습니다. 다른 화면은 두 가지 모드에서 동일하게 보이므로 새 화면에서는 그 두 가지 모드를 고집합니다. 그러나 만약 내가 그것을 할 것이라고 표시/서버 쪽 컨트롤을 숨길 것이다. JS에서이 작업을 수행하면 때때로 컨트롤이 나타나고 잠시 후 사라집니다. –

+0

DIV의 경계를 정하고 텍스트 영역과 똑같이 보이게 할 수 있습니다 (또는 그 반대). 나는 POST가 서버의 표시/숨기기 프로세스를 훨씬 지연시킬 수 있으므로 서버에 대한 POST가 가능한 JS/DHTML 플리커 (이 경우에는 어떤 것이라도 의심 스럽다)보다 나은 솔루션이라고 동의 할 수 없습니다 불필요한 서버 트립과 서버가 페이지를 재건 한 다음 데이터베이스와 세션 스토어에 접속하는 앱, 무엇을 필요로하지 않는지, 실제로 필요한 모든 것). –

+0

게다가, 당신이 원하는 것을 성취 할 수있는 유일한 방법은 보이지 않는 DIV를 만들고, 너비, 여백, 패딩, 테두리, 글꼴 패밀리, 글꼴 크기를 설정하는 것입니다 (나는 무엇이든 놓쳤습니다). 텍스트를 추가 한 다음 높이를 측정 한 다음 해당 높이를 텍스트 영역으로 설정 한 다음 최종적으로 임시 DIV를 제거합니다. 예를 들어, 같은 방법을 사용하여 텍스트를 자릅니다 (줄임표). 어쨌든, 당신은 DIV를 가지고 있습니다. 그래서, 나는 추측한다, 나는 단지 당신이 원하는 것을하기 위해 다른 방법을 버렸다. –

관련 문제