2014-02-12 17 views
0

我目前正在努力編寫一個函數,在警告框中顯示用戶的輸入級別,以便級別可以被證實或被拒絕,我完全被困住了,任何幫助都會被大大的讚賞,如果你能告訴我如何解決它,我可能會得到完全錯誤的結果嗎?我試圖讓一個警告框出現,當我這樣做,但當我嘗試其他驗證不起作用。我正試圖編寫一個函數,顯示在警告框中的用戶輸入的級別

<html> 
<head> 
<title>Exam entry</title> 
<script language="javascript" type="text/javascript"> 
function validateForm() { 
    var result = true; 
    var msg = ""; 
    if (document.ExamEntry.name.value == "") { 
     msg += "You must enter your name \n"; 
     document.ExamEntry.name.focus(); 
     document.getElementById('name').style.color = "red"; 
     result = false; 
    } 
    if (document.ExamEntry.subject.value == "") { 
     msg += "You must enter the subject \n"; 
     document.ExamEntry.subject.focus(); 
     document.getElementById('subject').style.color = "red"; 
     result = false; 
    } 
    if (document.ExamEntry.Exam_Number.value == "") { 
     msg += "You must enter the exam Number \n"; 
     document.ExamEntry.subject.focus(); 
     document.getElementById('Exam_Number').style.color = "red"; 
     result = false; 
    } 
    if (document.ExamEntry.Exam_Number.value.length != 4) { 
     msg += "You must enter at least Four Numbers in the Exam Number \n"; 
     document.ExamEntry.Exam_Number.focus(); 
     document.getElementById('Exam_Number').style.color = "red"; 
     result = false; 
    } 
    var Number = document.ExamEntry.Exam_Number.value 
    if (isNaN(document.ExamEntry.Exam_Number.value)) { 
     msg += "You must enter at least four numeric characters in the Exam Number feild \n"; 
     document.ExamEntry.Exam_Number.focus(); 
     document.getElementById('Exam_Number').style.color = "red"; 
     result = false; 
    } 
    var checked = null; 
    var inputs = document.getElementsByName('Exam_Type'); 
    for (var i = 0; i < inputs.length; i++) { 
     if (inputs[i].checked) { 
      checked = inputs[i]; 
      break; 
     } 
    } 
    if (checked == null) { 
     msg += "Anything for now /n"; 
     return false; 
    } else { 
     return confirm('You have chosen ' + checked.value + ' is this correct?'); 
    } 
    if (msg == "") { 
     return result; 
    } { 
     alert(msg) 
     return result; 
    } 
} 
</script> 
</head> 

下面這是我的HTML代碼

<body> 
<h1>Exam Entry Form</h1> 
<form name="ExamEntry" method="post" action="success.html"> 
<table width="50%" border="0"> 
<tr> 
<td id="name">Name</td> 
<td><input type="text" name="name" /></td> 
</tr> 
<tr> 
<td id="subject">Subject</td> 
<td><input type="text" name="subject" /></td> 
</tr> 
<tr> 
<td id="Exam_Number">Exam Number</td> 
<td><input type="text" name="Exam_Number"<font size="1">(Maximum characters: 4)</font> </td> 
</tr> 
<tr> 

<table><form action=""> 

<td><input type="radio" id="examtype" name="examtype" value="GCSE" /> : GCSE<br /> 
<td><input type="radio" id="examtype" name="examtype" value="A2" /> : A2<br /> 
<td><input type="radio" id="examtype" name="examtype" value="AS"/> : AS<br /> 
<td><input type="submit" name="Submit" value="Submit" onclick="return validateForm();" /></td> 
<td><input type="reset" name="Reset" value="Reset" /></td> 
</tr> 
</table> 
</form> 
</body> 
</html> 

回答

0

我希望這會爲你工作

JSFiddle

window.validateForm=function() { 
    var result = true; 
    var msg = ""; 
    if (document.ExamEntry.name.value == "") { 
     msg += "You must enter your name \n"; 
     document.ExamEntry.name.focus(); 
     document.getElementById('name').style.color = "red"; 
     //result = false; 
    } 
    if (document.ExamEntry.subject.value == "") { 
     msg += "You must enter the subject \n"; 
     document.ExamEntry.subject.focus(); 
     document.getElementById('subject').style.color = "red"; 
     //result = false; 
    } 
    if (document.ExamEntry.Exam_Number.value == "") { 
     msg += "You must enter the exam Number \n"; 
     document.ExamEntry.subject.focus(); 
     document.getElementById('Exam_Number').style.color = "red"; 
     //result = false; 
    } 
    if (document.ExamEntry.Exam_Number.value.length != 4) { 
     msg += "You must enter at least Four Numbers in the Exam Number \n"; 
     document.ExamEntry.Exam_Number.focus(); 
     document.getElementById('Exam_Number').style.color = "red"; 
     //result = false; 
    } 
    var Number = document.ExamEntry.Exam_Number.value 
    if (isNaN(document.ExamEntry.Exam_Number.value)) { 
     msg += "You must enter at least four numeric characters in the Exam Number feild \n"; 
     document.ExamEntry.Exam_Number.focus(); 
     document.getElementById('Exam_Number').style.color = "red"; 
     //result = false; 
    } 
    var checked = null; 
    var inputs = document.getElementsByName('Exam_Type'); 
    for (var i = 0; i < inputs.length; i++) { 
     if (!checked) { 
      checked = inputs[i]; 
     } 
    } 
    if (checked == null) { 
     msg += "Anything for now /n"; 

    } else { 
     return confirm('You have chosen ' + checked.value + ' is this correct?'); 
    } 
    if (msg == "") { 
     return result; 
    } { 
     alert(msg) 
     return false; 
    } 
} 
+0

我嘗試使用此代碼但它不驗證其他進入領域,有什麼想法? – Jamie

+0

哪個'其他條目'字段? – AtanuCSE

相關問題