YesYo.com MintState Forums
뒤로    YesYo.com MintState BBS > Tech > Javascript
검색
멤버이름    오토
비밀번호 
 

innerHTML 에서 script 태그 넣기

페이지 정보

작성자 MintState 댓글 1건 조회 16,293회 작성일 09-02-13 12:13

본문

innerHTML 에서 script 태그 넣기

innerHTML 아래와 같이 script 태그를 넣으면 에러가 생기는 것을 볼수 있습니다.
Act.innerHTML = "<script type='text/javascript'>document.write('yesyo.com')</script>";


innerHTML의 문자열에 script 가 들어 가서 문제가 생깁니다.
이것을 아래와 같이 수정하면 문제가 해결됩니다.
Act.innerHTML = "<scr" + "ipt type='text/javascript'>document.write('yesyo.com')</scr" + "ipt>";


php 에서 쓴다면 아래와 같이 쓸수 있습니다. 응용하세요.
function MalertDiv($msg,$w='',$url='',$sb='',$charset='euc-kr')	{	
		$_msg = "<table width='100%'><tr><td align='center' height='100'>".$msg."</td></tr><tr><td height=1 bgcolor=#94A9C8></td><tr><tr><td align='center' height=35><a href=\"javascript:screenBlind_off('".urlencode($url)."');\"><img src='/img/btn_closed.gif' align=absmiddle></a></td></tr></table>";
		echo "<meta http-equiv=\"content-type\" content=\"text/html; charset=$charset\">
		<script language='javascript'>
		var hiddenAct = parent.document.getElementById('hiddenAct');
		var msg = \"".str_innerHTML($_msg)."\";
		hiddenAct.innerHTML = msg;
		parent.screenBlind_on(".$w.");
		</script>";
    exit;
}
function str_innerHTML($str) {
		$str = str_replace('"', '\"', preg_replace("/\r\n|\r|\n/", "", $str));
		$str = str_replace('<script', '<scr" + "ipt', $str);
		$str = str_replace('</script>', '</scr" + "ipt>', $str);
		return $str;
}

댓글목록

박군님의 댓글

박군 작성일

asd

Total 178건 2 페이지
게시물 검색
모바일 버전으로 보기
CopyRight ©2004 - 2024, YesYo.com MintState. ™