익스9에서 onClick 이벤트가 안먹을수도 있나요?

익스9에서 onClick 이벤트가 안먹을수도 있나요?

QA

익스9에서 onClick 이벤트가 안먹을수도 있나요?

본문

 

 
<table width="600" align="center" border="0" cellspacing="1" cellpadding="3" bgcolor="#8dde87">
  	<tr><td colspan="2" height="1" bgcolor="#2c8424"></td></tr>
	<tr>
		<td bgcolor="#eefaed" width="35%" style="padding-left:10px;font-weight:bold;color:#2c8424;">* 현금영수증 발급</td>
		<td bgcolor="#FFFFFF" style="padding-left:10px">
			<input type="radio" name="wr_15" id="wr_15" value="신청"  itemname="현금영수증 신청" <?if($write[wr_15]=="신청")echo"checked";?> onclick="input(1);this.form.wr_16.required=true;this.form.wr_17.required=true;"> 
			신청
			<input type="radio" name="wr_15" id="wr_15 "value="미신청"  itemname="현금영수증 신청" <?if($write[wr_15]=="미신청")echo"checked";?> onclick="alert('현금영수증을 미신청 하셨습니다. 추후 수정 불가합니다.');input(2);this.form.wr_16.required=false;this.form.wr_17.required=false;"> 
			미신청 
		</td>
	</tr>
	</table>
	<div style="relative; display:block;"> 
	<div id="box1">
	<table width="600" align="center" border="0" cellspacing="1" cellpadding="3" bgcolor="#8dde87">
	<tr>
		<td bgcolor="#eefaed" width="35%" style="padding-left:10px;font-weight:bold;color:#2c8424;">* 거래구분</td>
		<td bgcolor="#FFFFFF" style="padding-left:10px">
			<select name='wr_16' class='ed' itemname='거래구분' style="font-size:10pt; height:30px; padding:5px;">
					<option value='' >유형선택</option>
					<option value='소득공제' <? if($write[wr_16] == "소득공제") echo "selected"; ?>>소득공제(개인)</option>
					<option value='지출증빙' <? if($write[wr_16] == "지출증빙") echo "selected"; ?>>지출증빙(사업자)</option>
			</select>
		</td>
	</tr>
	<tr>
		<td bgcolor="#eefaed" width="35%" style="padding-left:10px;font-weight:bold;color:#2c8424;">* 현금영수증 발급번호</td>
		<td bgcolor="#FFFFFF" style="padding-left:10px">
		<input class=ed style="width:160px; font-size:11pt; height:20px; padding:5px; font-family: NanumGothic;" name=wr_17 itemname="발급번호" value="<?=$write[wr_17];?>" onkeydown="this.value=this.value.replace(/[^0-9]/g,'')"
		maxlength=12 onkeyup="this.value=this.value.replace(/[^0-9]/g,'')" onblur="this.value=this.value.replace(/[^0-9]/g,'')"><br>*개인 소득공제는 휴대전화 번호, 사업자 지출증빙은 사업자번호만 <br>입력 가능(주민번호 카드번호 입력불가)		
		</td>
	</tr>
	</table>
	</div>
	<div id="box2" style="absolute; display:none;"> 
     <table  width="600" align="center" border="0" cellspacing="1" cellpadding="3" bgcolor="#8dde87">
	 <tr><td bgcolor="#eefaed" width="35%" style="padding-left:10px;font-weight:bold;color:#2c8424;">현금영수증을 미신청 하셨습니다. 추후 수정 불가합니다.</td></tr>
	 </table>
	</div>
	</div>
 
 
<script type="text/javascript"> 
function input(temp) // 라디오 선택에 따라서 입력폼 전환
{ 
    if(temp==1) 
    {  
        document.getElementById("box1").style.display=""; 
        document.getElementById("box2").style.display="none"; 
    }else{ 
        document.getElementById("box1").style.display="none"; 
        document.getElementById("box2").style.display=""; 
    } 
 
} 
function fwrite_submit(f) // 현영 신청필수(onClick이벤트 발생위해)
{
	if(!$("input[name='wr_15']").is(":checked")){
		alert('현금영수증 구분을 선택해주세요.');
		$("input[name='wr_15']").eq(0).focus();
		return false;
	}
}
</script>

 

위와 같이 wr_15에서 라디오로 신청을 클릭시에는 신청폼이 나타나고 그에 따라서 입력폼(wr_16,wr_17)이 필수 입력으로 바뀝니다.(여기까지는 익스9에서 잘됩니다.) 그런데 wr_15에서 미신청을 클릭을 하면 미신청 폼까지는 잘 나오는데 div로 숨겨놓은 wr_16하고 wr_17을 필수입력하라고 경고가 뜨네요. 만약 글쓰기시에 바로 미신청을 클릭하면 상관없는데 신청을 한번 클릭을 한뒤 미신청으로 가면은 필수입력하라고 경고가 뜹니다. 익스플로러 9에서만 그러구요... 왜그럴까요 ㅠㅠ

 

 

이 질문에 댓글 쓰기 :

답변 4

아래처럼 jquery 코드로 바꾸어서 해보세요


this.form.wr_16.required=false --> $("input[name='wr_16']").attr("required", false)


this.form.wr_17.required=false --> $("input[name='wr_17']").attr("required", false)

 

function input( 이 함수이름을 다른 것으로 변경하세요. 

onclick이벤트가 브라우저에 따라 안먹히는게 아니구여

다른것과 충돌나거나 다른이벤트랑 문제가 생기면 이벤트가 발생하지않아야될것이

발생하고 반대의 현상도 나옵니다. 

답변을 작성하시기 전에 로그인 해주세요.
전체 104
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT