function submitcheck()
{
var f = document.form1;
if (f.rbTemplate!= null)
{
...
alert('Please choose template');
return false;
...
}
if (f.rbColorId!= null)
{
...
alert('Please choose template color');
return false;
...
}
}
function ShowColor()
{
var f= document.form1;
iTemplate= getSelectedRadioValue(f.rbTemplate);
var params= "iTemplate="+iTemplate;
var url= "ajaxColor.php";
doShowOutput(params, url, retrieveColorsAvailableForThisTemplate);
}
function retrieveColorsAvailableForThisTemplate()
{
if(httpObject.readyState == 4)
{
document.getElementById('showtime').style.display="";
document.getElementById('showtime').innerHTML= httpObject.responseText;
}
}
<input type='radio' name='rbTemplate' id=1 value=1 onclick='ShowColor();'>
<img src="template1.jpg" />
<br />
<input type='radio' name='rbTemplate' id=2 value=2 onclick='ShowColor();'>
<img src="template2.jpg" />
<div id=showtime></div>
을 감지
rbTemplate의 ID를 클릭은 = 1, 아약스 쿼리 = ID로이 템플릿자바 스크립트는
예를 들어 쇼 타임 가능한 색상을 반환 할 때 :
<table>
<tr>
<td bgColor="#FF0000"><input type=radio name=rbColorId id=1 value=1></td>
<td bgColor="#FF0007"><input type=radio name=rbColorId id=2 value=2></td>
<td bgColor="#FF0003"><input type=radio name=rbColorId id=3 value=3></td>
</tr>
</table>
rbTemplate id = 2를 클릭하십시오. ajax는 id = showtime에 간단한 메시지로 결과를 반환합니다.이 템플릿은 실제로 어떤 색 선택도 없기 때문에 반환합니다)
예 : "<p>this template don't have any color</p>"
문제는 지금 :
1 단계 : 다음을 클릭 rbTemplate 아이디 = 1에서 색상을 선택하지 않고 클릭 (자바 스크립트 색상을 선택하라고 메시지를 표시합니다) 제출 후,
2 단계 : 그때 rbTemplate id = 2를 다시 클릭하여 다시 반복하십시오.이 두 번째 템플릿에는 색상이 없으므로 이번에는 다시 제출을 클릭하십시오. 색상 선택을 묻지 않아야합니다. 하지만 자바 스크립트 프롬프트가 계속 나타납니다.
도움말
그냥 Ajax 호출의 결과를 출력되기 때문에
제거 할 수 없습니다. 왜냐하면 사용자는 템플릿을 선택해야하기 때문입니다. 그런 다음 특정 템플릿에 여러 색상이있는 경우 색상을 선택해야합니다. 사용자가 색상을 선택하면 자바 스크립트가 선택하도록 경고합니다. –