Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 11.11.2012, 19:01
Новичок на форуме
Отправить личное сообщение для sur_oviy Посмотреть профиль Найти все сообщения от sur_oviy
 
Регистрация: 11.11.2012
Сообщений: 3

Разработать страницу для автоматического подсчета успеваемости студента
В колонке «Оценка» должны находиться поля ввода.
В строках «СУММА» и «СРЕДНЯЯ ОЦЕНКА» должны находиться вычисляемые поля. Их значения должны автоматически вычисляться при вводе любой оценки.
Ниже таблицы следует разместить сообщение об ошибке для случая, если вместо оценки будет введено недопустимое значение, например, текст или число вне диапазона от 2 до 5.
Функция, будет вызываться в ответ на событие onkeypress от каждого поля ввода оценки. Функция должна просматривать все поля, и суммировать оценки. Каждое введенное значение должно проверяться на попадание в диапазон допустимых значений 2, 3, 4 и 5.
В случае несовпадения, значение должно пропускаться, и выдаваться сообщение об ошибке.
<script language="text/javascript">
	function summ() {
		var a=document.getElementById('o1').value;
		var b=document.getElementById('o2').value;
		var c=document.getElementById('o3').value;
		var d=document.getElementById('o4').value;
		var e=document.getElementById('o5').value;
		var f=document.getElementById('o6').value;
		var s=(a+b+c+d+e+f);
		res.value=s;
	}

<body>
<div align="center"><h1>Анкета успеваемости студента</h1></div>
	<form name="form1">
		<table align="center" border="2px">
			<tr><td align="center">Дисциплина</td><td align="center">Оценка</td></tr>
			<tr><td>Математика</td><td><input type="text" size="10" maxlength="1" id="o1" onKeyPress="summ()"></td></tr>
			<tr><td>Информатика</td><td><input type="text" size="10" maxlength="1" id="o2" onKeyPress="summ()"></td></tr>
			<tr><td>Физика</td><td><input type="text" size="10" maxlength="1" id="o3" onKeyPress="summ()"></td></tr>
			<tr><td>История</td><td><input type="text" size="10" maxlength="1" id="o4" onKeyPress="summ()"></td></tr>
			<tr><td>Русский язык</td><td><input type="text" size="10" maxlength="1" id="o5" onKeyPress="summ()"></td></tr>
			<tr><td>Физкультура</td><td><input type="text" size="10" maxlength="1" id="o6" onKeyPress="summ()"></td></tr>
			<tr><td>Сумма</td><td><input type="text" size="10" name="res" id="res" onKeyPress="summ()"></td></tr>
			<tr><td>Средняя оценка</td><td><input type="text" size="10" name="sr" id="sr" onKeyPress="summ()"></td></tr>
		</table>
	</form>
</body>
</html>


Я правда слаб в Яве, но надеюсь на помощь)
Ответить с цитированием
  #2 (permalink)  
Старый 12.11.2012, 12:51
Кандидат Javascript-наук
Отправить личное сообщение для `p r o x y Посмотреть профиль Найти все сообщения от `p r o x y
 
Регистрация: 04.05.2009
Сообщений: 105

sur_oviy,
Вы ошиблись разделом. Вам сюда.
Ответить с цитированием
  #3 (permalink)  
Старый 12.11.2012, 14:36
Аватар для lord2kim
Профессор
Отправить личное сообщение для lord2kim Посмотреть профиль Найти все сообщения от lord2kim
 
Регистрация: 03.05.2011
Сообщений: 848

sur_oviy,
<html>
<head>
<script language="javascript">
var d = document;

function summ() {
	var len = d.getElementsByName("rating"), el, er = 0, sum = 0;
	d.getElementById("error").innerHTML = ""; d.getElementById("res").value = ""; d.getElementById("sr").value = "";
	for (i = 0; i < len.length; i++) {
		el = Number(len[i].value);
		if (isNaN(el) || el == "" || (el < 2 || el > 5)) {
			d.getElementById("error").innerHTML = "Оценка №"+(i+1)+" не является числом или не попадает в диапазон от 2 до 5!"; er = 1; break;
		}
		else {
			sum += el;
		}
	}
	if (er == 1) { return false; }
	d.getElementById("res").value = sum;
	d.getElementById("sr").value = Math.round(sum/len.length);
}
</script>
</head>
<body>
<h1 align="center">Анкета успеваемости студента</h1>
    <form name="form1">
        <table align="center" border="2px">
            <tr><th>#</th><th>Дисциплина</th><th>Оценка</th></tr>
            <tr><td>1</td><td>Математика</td><td><input type="text" size="10" maxlength="1" name="rating" onkeyup="summ()"></td></tr>
            <tr><td>2</td><td>Информатика</td><td><input type="text" size="10" maxlength="1" name="rating" onkeyup="summ()"></td></tr>
            <tr><td>3</td><td>Физика</td><td><input type="text" size="10" maxlength="1" name="rating" onkeyup="summ()"></td></tr>
            <tr><td>4</td><td>История</td><td><input type="text" size="10" maxlength="1" name="rating" onkeyup="summ()"></td></tr>
            <tr><td>5</td><td>Русский язык</td><td><input type="text" size="10" maxlength="1" name="rating" onkeyup="summ()"></td></tr>
            <tr><td>6</td><td>Физкультура</td><td><input type="text" size="10" maxlength="1" name="rating" onkeyup="summ()"></td></tr>
            <tr><td>&nbsp;</td><td>Сумма</td><td><input type="text" size="10" id="res"></td></tr>
            <tr><td>&nbsp;</td><td>Средняя оценка</td><td><input type="text" size="10" id="sr"></td></tr>
        </table><br>
		<span id="error" style="color: red; width: 100%; text-align: center;"></span>
    </form>
</body>
</html>
Ответить с цитированием
  #4 (permalink)  
Старый 13.11.2012, 20:00
Новичок на форуме
Отправить личное сообщение для sur_oviy Посмотреть профиль Найти все сообщения от sur_oviy
 
Регистрация: 11.11.2012
Сообщений: 3

Спасибо большое за помощь!
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Событие для динмического подсчета числа andvab Events/DOM/Window 2 04.05.2011 10:44
Помогите,пожалуйста разработать страницу Sweetybaby_77 Общие вопросы Javascript 5 30.11.2010 14:52
Ищу скрипт для вставки на страницу чата Relle Firefox/Mozilla 3 14.05.2009 11:08