sub_title
 HTML5
제   목 파일찾기 버튼을 이미지로 바꾸기
작성자 다자래 등록일 2007-11-16 15:44:45 조회수 6,505
파일찾기 버튼을 이미지로 바꾸기 

저희 카페에 올렸던 글입니다. 도움이 될까 싶어서 여기에도 올려봅니다.

<!--- 파일찾기 버튼을 이미지로 바꾸는 편법입니다.

가끔 열심히 즐코딩하다가 보면 옆에 있는 말씀없는 디자이너께서 한마디 상의도 없이 너무도 예쁜 파일찾기 버튼을 디자인
해서 주십니다.
 일단 정상적인 방법으로는 바꿀방법이 없슴을 우리는 알고 있습니다. 하지만 개발자 자존심에 그거 원래 안
된다고 말할 수 도 없구... 어떻게든 바꿔볼려고 노력하다 정말 머리 좋으신 분들이 제시해준 편법을 이용해서 바꾸는 방법을
찾게되고
 기쁜마음에 적용해 보게됩니다... 하지만 


허걱~~~ 버튼클릭해서 이미지를 선택하는것까지는 가능한데 전송이 안됩니다.
 

document.form.submit 부분만 만나면 그대로 오류 메시지 띄우고 전송버튼 반복해서 몇번 클릭해보면 파일 업로드 없
이 form.action 에서 정의해준 페이지로 걍~~~넘어갑니다. 이유는 이미지 클릭시 파일찾기 버튼이 클릭된 것처럼 속여주는 

것인데 전송(submit) 버튼 클릭시 <input type="file"> 의 value값이 깨끗이 초기화되어 버려서 파일의 값이 넘어갈 방법이 

없는것이 문제입니다. 아래 소스는 파일찾기 버튼을 이미지로 바꾸는 편법 세가지입니다. 그중 form3에 정의된 세번째 예제만 

정상적으로 파일전송이 이루어집니다. 키포인트는 opacity값을 0으로 주어 원래 파일찾기 버튼을 감추는 것입니다.

---->
 

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=euc-kr" />
<title>파일업로드 테스트</title>
<script language="javascript">
<!--
function checkFile(form)
{

   if ( form.file_text.value.length == 0 )
   {
    alert('파일을 선택하지 않으면 혼날수도 있습니다.');
    return false;
   }
   else
   {
    form.action = "http://cafe.naver.com/webdeveloper.cafe"
    form.submit();
   }
}
-->
</script>

</head>
<body>


<!----전송 에러 Form ----->
<form name="form1" method="post" enctype="multipart/form-data">
<input type="file" name="upfile" style="display:none;" onchange="document.form1.file_text.value=this.value;this.blur();">
<input type="text" name="file_text" size="30" maxlength="30" readonly >
<img src="http://blogimgs.naver.com/imgs/btn_addfile3.gif" width="56" height="20" align="absmiddle" onmouseover="this.style.cursor='hand';" onclick="document.form1.upfile.click();">
<br><br> 
<input type="button" value="전송" onClick="javascript:checkFile(this.form)">
</form>


<!----전송 에러 Form---->
<form name="form2" method="post" enctype="multipart/form-data"> 
<input type=text name="file_text" size="30" maxlength="30" readonly > 
<span style="overflow:hidden; width:56; height:20; background-image:url(http://blogimgs.naver.com/imgs/btn_addfile3.gif);" onclick='upfile.click()'> 
</span> 
<input type=file name='upfile' style="width:0;height:20;filter:alpha(opacity=0);" onchange='file_text.value=this.value'><br><br> 
<input type="button" value="전송" onClick="javascript:checkFile(this.form)">
</form>


<!----정상 전송 Form---->
<form name="form3" method="post" enctype="multipart/form-data"> 
<input type=text name="file_text" size="30" maxlength="30" readonly > 
<span style="overflow:hidden; width:56; height:20; background-image:url(http://blogimgs.naver.com/imgs/btn_addfile3.gif);"> 
<input type=file name='upfile' style="width:0;height:20;filter:alpha(opacity=0);" onchange='file_text.value=this.value'> 
</span> 
<br><br>
<input type="button" value="전송" onClick="javascript:checkFile(this.form)">
</form>


</body>
</html>


출처: http://cafe.naver.com/webdevloper.cafe

 
1
    
 
0
        list
 
※ 짧은 댓글일수록 예의를 갖추어 작성해 주시기 바랍니다.
line
reply cancel
 
번호 제목 글쓴이 추천 조회 날짜
34  웹표준에 맞게 td 높이 지정하기(html5 td height)   admin 웹마당넷 9 / 2 10331 2015-07-13
33  Input box의 Tabindex 순서 지정하기   member 컴쟁이 0 / 0 7336 2010-03-24
32  Fieldset을 이용한 이벤트 박스 만들기   member 컴쟁이 0 / 0 5396 2010-03-22
31  Meta Tag의 Refresh 속성을 이용한 페이지 자동 전환 기법   member 컴쟁이 1 / 0 3696 2010-03-19
30  테이블에 링크 걸기   member 티란투라 0 / 0 5116 2010-03-09
29  textarea 강제 줄바꿈하기   member 티란투라 3 / 0 14880 2010-02-19
28  SELECT BOX 크기를 style속성으로 고정시키기   member 티란투라 2 / 1 54061 2010-02-02
27  테이블 테두리를 얇게   member 티란투라 0 / 0 9935 2009-02-09
26  서로 다른 도메인간에 iframe 자동 리사이즈 하기   member 웹마니아 0 / 0 5315 2009-01-23
25  DHTML Scriptlet 보안강화로 X로 표시될때 처리방법   member 티란투라 0 / 0 3939 2009-01-14
24  HTML 테이블 선 조절하기 이미지   member 웹돌이 0 / 0 6931 2008-09-16
23  TEXTAREA에 스크롤바 없애기   member 티란투라 0 / 0 5099 2008-08-25
22  INPUT 박스에 한/영 토글없이 한글 입력하기   member 티란투라 0 / 0 3783 2008-08-16
21  윈도우즈 XP에서 이미지 툴바 없애기!   member 오렌지 0 / 0 6168 2008-06-20
20  TEXT 박스에서 오른쪽 정렬하기   member 티란투라 0 / 0 4540 2008-06-09
19  플래쉬 위에 레이어 띄우기   member 티란투라 0 / 0 4232 2008-05-25
18  html 색상표   member 오렌지 0 / 0 4973 2007-12-10
17  파일찾기 버튼을 이미지로 바꾸기   member 다자래 1 / 0 6505 2007-11-16
16  플래시 embed태그 말고 스크립트로 불러오기   member 웹돌이 0 / 0 5903 2007-10-09
15  input tag에 대한 정리!   member 웹돌이 0 / 0 4898 2007-10-09
14  html 프레임 나누기   member 웹돌이 0 / 0 6943 2007-10-09
13  레이어안에 스크롤 넣기!   member 웹돌이 0 / 0 6771 2007-09-29
12  새창 띄우기!   member 웹돌이 0 / 1 4718 2007-09-29
11  목록태그 (ul,ol)   member 웹돌이 0 / 0 5971 2007-09-29
10  투명 아이프레임 만들기!   member 웹돌이 0 / 0 4364 2007-09-29
write
[2] button