0
라디오 버튼을 사용하여 양식에 제출할 필드를 선택하고 싶습니다. 이 HTML 코드를IE7과 IE8에서 javascript 라디오 버튼이 작동하지 않습니다.
<script>
function validateForm(){
var x=document.forms["preinsert"]["RIF"].value;
var y=document.forms["preinsert"]["CTP"].value;
var xd=document.forms["preinsert"]["RIF"].disabled;
var yd=document.forms["preinsert"]["CTP"].disabled;
if (xd == false){
if (x==null || x==""){
alert("The first field can't be empty.");
return false;
}
}
else if (yd == false){
if (y==null || y==""){
alert("The second field can't be empty.");
return false;
}
}
}
</script>
: 나는이 스크립트를 사용하고있어
<form name="preinsert" action="/ServletPreInsert" method="post" onsubmit="return validateForm()">
<table>
<tr>
<td>
<input type="radio" name="rad" checked="checked" onclick="RIF.disabled=false; CTP.disabled=true;"/>
<select name="RIF1" class="right-select">
<option selected="selected">NB</option>
<option>LTI</option>
</select>
</td>
<td>
<input id="RIF" name="RIF" class="fixed-input" type="text">
</td>
</tr>
<tr>
<td>
<input type="radio" name="rad" onclick="RIF.disabled=true; CTP.disabled=false;"/>Counterparty
</td>
<td>
<select id="CTP" name="CTP" class="fixed-select" disabled>
<option>Option_1</option>
<option>Option_2</option>
<option>Option_3</option>
</select>
</td>
</tr>
</table>
</br></br>
<p align="right"><input type="submit" value="Insert"></p>
</form>
내가 몰래 있어요입니다 : 나는 IE7/8, 같은 브라우저에서이 코드를 사용하는 경우 난을 선택하면 두 번째 라디오 버튼, 옵션을 누른 다음 내 양식을 제출, 자바 스크립트에서 오류 메시지가 나타납니다 : "두 번째 필드는 비어있을 수 없습니다." 하지만 첫 번째 라디오 버튼을 선택한 상태에서 첫 번째 입력란에 무언가를 입력하면 원하는대로 작동합니다.
"미친"일은 Firefox 26.0에서 발생하지 않습니다.
그래서, 무엇이 문제입니까? 당신은 IE7/8에서이 작업을하려면
심각하게도, 창에서 전역 이름을 사용하여 요소에 액세스하고 onclick 등을 사용할 수 없게 설정했습니다.이 모든 것이 실제로 내게 엉뚱한 것처럼 보입니까? – adeneo
그 때 당신은 무엇을 건의합니까? 고맙습니다. – abierto
대신 적절한 이벤트 처리기 및 선택기를 제안합니다. – adeneo