게시판 본문 (본 게시판은 읽기전용 구 게시판입니다.)

re: 전체선택관련
작성자: 송원석
작성일시: 2011-05-23 09:03,  조회수: 2,118
안녕하세요? 송원석입니다. ^_^

말씀하신 자바스크립트들은 그리 흔히 쓰이지는 않아서 저도 구현해 본 경험이 적습니다. 일단 제가 알고 있는 부분에 대해서만 말씀드리도록 하겠습니다. 단, 저 역시도 지금부터 말씀드릴 내용들에 대해서는 IE 에서만 작업을 해봤으며, 같은 IE 내부에서도 버전에 따라서 어떤 특성들이 있을지는 장담드릴 수 없다는 점을 감안하시고 참고하시기 바랍니다.

먼저 Ctrl+A를 구현하는 가작 쉬운 방법은 IE의 내부 명령어를 호출하는 방법이 가장 간단한 방법일 것 같네요. 즉, 사람이 Ctrl+A를 누르거나, 메뉴에서 '모두 선택'을 선택한 것과 동일한 동작을 하도록 만들면 됩니다. 먼저, 다음 문서를 참고해보시기 바랍니다.

http://msdn.microsoft.com/en-us/library/aa752577(v=VS.85).aspx

위의 문서는 IE에서 제공해주는 execCommand 메서드의 명세입니다. 이 메서드를 이용하면 메뉴의 명령을 실행시킬 수 있습니다. 더 다양한 사례는 구글링을 해보시면 되고요, Ctrl+A와 같은 효과는 다음의 코드로 얻을 수 있습니다.

document.execCommand("SelectAll", true);

이 코드에서 사용되는 "SelectAll"이 전체 선택을 하는 명령어인데요, 이런 명령어들의 목록은 다음 문서에서 살펴볼 수 있습니다.

http://msdn.microsoft.com/en-us/library/ms533049(v=VS.85).aspx

그리고, 특정 문장을 선택하는 방법은 저도 일괄적으로 설명드리기는 조금 곤란하구요. 기본적인 내용만 말씀드려보도록 하겠습니다. 다음은 IHTMLDocument2 인터페이스 명세인데요, 여기를 보면 selection 이라는 속성이 있는데, 여기에 현재 선택된 영역의 정보들이 담겨 있습니다. 이 속성을 비롯하여 몇 가지 기능들을 이용하셔야 합니다.

http://msdn.microsoft.com/en-us/library/aa752574(v=VS.85).aspx

가령 이 게시판에서도 완전히 같지는 않지만, 비슷한 기능을 사용하고 있습니다. 글을 작성할 때, 코드 부분을 선택한 다음, "CDOE" 버튼을 클릭하면 해당 영역이 PRE 태그로 감쌓여집니다. 이 작업에 대한 코드는 다음과 같습니다.

function Set_useCode() {

    var objTxtRange = null;

    if (document.selection.type.toUpperCase() == "NONE") {
        alert("코드 블럭 설정을 위한 content 의 텍스트 영역이 선택되지 않았습니다. ");
        doc.content.focus();
    } else {
        doc.useHTMLChk.src = "/image/cubeboard/bHTMLon.jpg";
        doc.useHTML.value = 1;
        objTxtRange = document.selection.createRange();
        if (objTxtRange.parentElement().tagName.toUpperCase() == "TEXTAREA") {
            objTxtRange.text = "\n<pre class=\"EC_PRE_TAG\">\n" + objTxtRange.text + "\n</pre>\n";
        } else {
            alert("코드 블럭 설정을 위한 content 의 텍스트 영역이 선택되지 않았습니다. ");
            doc.content.focus();
        }
        objTxtRange = null;
    }

}

벌써 7, 8년은 족히 된 코드라 어수선합니다만, 이런식으로 스크립트에서 선택 영역에 대한 처리를 수행할 수 있습니다.

감사합니다.

IP 주소: 203.226.5.240
전체 2,095 건의 게시물, 84 페이지로 구성된 ASP, ASP.NET, IIS & Script 게시판의 1 페이지입니다.
번호 게시물 제목 작성자 작성일시 조회수
2,208

win2008 iis에 관한 문의가 좀 있습니다.

이재성

2011-05-25 4,118
2,207

re: win2008 iis에 관한 문의가 좀 있습니다.

송원석

2011-05-27 2,351
2,206

전체선택관련

이석환

2011-05-20 124

re: 전체선택관련

송원석

2011-05-23 2,118
2,204

엑셀파일명 깨짐에 대해

이석환

2011-05-17 130
2,203

re: 엑셀파일명 깨짐에 대해

송원석

2011-05-17 2,190
2,202

동영상 탑재 사이트 구축 [1]

정보문

2011-05-12 2,212
2,201

re: 동영상 탑재 사이트 구축 [1]

송원석

2011-05-12 2,084
2,200

동시접속자가 많을 경우 XMLDOM 검색 처리 방법 문의

Tanhi

2011-04-24 2,235
2,199

re: 동시접속자가 많을 경우 XMLDOM 검색 처리 방법 문의

송원석

2011-04-25 2,120
2,197

framest 질문이요..

김종식

2011-03-30 228
2,196

re: framest 질문이요..

송원석

2011-03-31 2,038
2,195

자바스크립으로 된 장바구니 기능..

gosuzzang

2011-03-23 290
2,194

re: 자바스크립으로 된 장바구니 기능..

송원석

2011-03-24 2,159
2,193

Server.GetLastError 관련

이석환

2011-03-23 253
2,192

re: Server.GetLastError 관련 [2]

송원석

2011-03-24 2,350
2,191

파일 다운로드시

이석환

2011-03-18 345
2,190

re: 파일 다운로드시

송원석

2011-03-19 2,367
2,189

re: 파일 다운로드시

송원석

2011-03-21 2,217
2,188

re: 파일 다운로드시

이석환

2011-03-21 258
2,187

re: 파일 다운로드시

송원석

2011-03-21 2,188
2,186

iis 요청 필터링관련

질문

2011-03-18 311
2,185

re: iis 요청 필터링관련

송원석

2011-03-18 3,263
2,184

오류메시지 깨짐현상

이석환

2011-03-11 345
2,183

re: 오류메시지 깨짐현상

송원석

2011-03-14 3,718
COPYRIGHT © 2001-2017 EGOCUBE. ALL RIGHTS RESERVED.
Total Visit Count: 9,982,771, v1.9.0.18533 β