Web/Javascript

IFRAME에 입력한 데이터를 넘기기.

qOOp 2008. 10. 21. 12:13
반응형

IFRAME에 입력한 데이터를 넘기기.

일반적으로 INPUT 태그, TEXTAREA 태그가 아니면 데이터의 입력이 불가하다.

그러나 자바스크립트를 이용하면 IFRAME에 데이터를 입력할수 있다.

onload   = function() {

getIFrameID("Editor").designMode = "On";       // 로드시 읽지 않으면 실행되지 않는다.

}

function getIFrameID(aID) {

              if (document.getElementById(aID).contentDocument) {

                            return document.getElementById(aID).contentDocument; // FF

              } else {

                            return document.frames[aID].document; // IE

              }

}

<body>

<iframe id=”Editor”></iframe>

<div id="tXt" class="divHide"></div>

</body>

페이지가 로딩이 되면 IFRAME designMode 로 설정을 한다.

, document.frames[“아이프레임 아이디”].document.designMode = “on”; 으로 설정을 하면 글자를 입력할수 있다. 익스플로러의 경우. // 파이어폭스의 경우도 함께 대처하기 위해서 함수를 작성.

이렇게 작성이 되어 글을 작성을 할수는 있지만, 이 상태로는 값을 넘길수가 없다.

따라서,

var srrTxt = Editor.document.body.innerHTML;

document.getElementById("tXt").innerHTML = "<textarea name='content' style='display:none'>" + srrTxt + "</textarea>";

위와 같이 DOM을 사용해서 form태그내에 textarea를 만들어서 그 안에 iframe에 작성한 값을 넣어 주면된다.