2015-12-25 2 views
-1

Почему мой код ниже для простого калькулятора классов не работает? Я могу ввести цифры, но после того, как я это сделал, на экране не отображается ни одна оценка. Что я делаю не так? Японцев можно игнорировать. Мои ученики - японцы, поэтому я поместил инструкции на японском языке.Код JS для калькулятора простых классов не работает

<!DOCTYPE html> 
     <html> 
     <head> 
     <meta charset="UTF-8"> 
     <title>英語1B</title> 

     <script> 
     function computeGrade() { 
     var q1=document.getElementById('q1').value; 
     var q2=document.getElementById('q2').value; 
     var q3=document.getElementById('q3').value; 
     var es1=document.getElementById('es1').value; 
     var es2 =document.getElementById('es2').value; 
     var es3 =document.getElementById('es3').value; 
     var a=document.getElementById('a').value; 
     var average = ((q1+q2+q3)/192*.25 + (es1+es2+es3)/50*.55 +  a/14*.2)*100); 
     document.getElementById('average').innerHTML = "あなたの平均が" + average + "%。";} 



     </script> 
     </head> 

     <body> 
     <h2>成績の計算</h2> 

     <p>小テスト1の点数:<input id="q1" type="number" onchange="computeGrade()"></p> 

     <p>小テスト2の点数:<input id="q2" type="number" onchange="computeGrade()"></p> 

<p>小テスト3の点数:<input id="q3" type="number" onchange="computeGrade()"></p> 

<p>エレベーター・スピーチ1の点数: <input id="es1" type="number" onchange="computeGrade()"></p> 

     <p>エレベーター・スピーチ2の点数: <input id="es2" type="number" onchange="computeGrade()"></p> 

     <p>エレベーター・スピーチ3の点数: <input id="es3" type="number" onchange="computeGrade()"></p> 

     <p>出席の回数: <input id="a" type="number" onchange="computeGrade()"></p><br> 

     <p id = "average"></p> 


     </body> 

     </html> 
+0

Просьбы ожидаемого выход, фактический выход. – ferit

+0

Хорошее место для поиска - это ошибки, которые ваш браузер испускает, когда что-то идет не так. Обычно вы можете найти это, щелкнув правой кнопкой мыши где-нибудь на странице и проверив. – bob0the0mighty

ответ

0

У вас есть дополнительные скобки в строке 16 вашей HTML:

// [YOUR CODE] this last parenthesis is not needed. 
var average = ((q1+q2+q3)/192*.25 + (es1+es2+es3)/50*.55 + a/14*.2)*100); 

// [YOUR CODE WITHOUT LAST PARENTHESIS] this does not produce any errors. 
var average = ((q1+q2+q3)/192*.25 + (es1+es2+es3)/50*.55 + a/14*.2)*100; 

Я нашел это путем копирования/вставки ваш фрагмент кода в HTML-файл, и открытие Консольный вывод моего браузера, чтобы увидеть, где ошибка указывала.

0

Вы имели 1 неожиданного маркер в вашем JavaScript: вы должны удалить последний paranthesis на линии, где вы вычисляя среднего

var average = ((q1+q2+q3)/192*.25 + (es1+es2+es3)/50*.55 + a/14*.2)*100; 

Я положил свой код в codepen: http://codepen.io/anon/pen/jWMwwM

Смежные вопросы