Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 13.01.2009, 20:57
Новичок на форуме
Отправить личное сообщение для $Dim@n$777 Посмотреть профиль Найти все сообщения от $Dim@n$777
 
Регистрация: 10.01.2009
Сообщений: 5

Помогите переделать скрипт подсчета результатов для HTML-теста
Как в HTML-тесте сделать подсчет кол-ва правильных ответов помещенных в тэги <INPUT> с атрибутами Radio и Checkbox?
Изначально он расчитан на подсчет правильных ответов толька с атрибутами radio, но у меня в тесте будут вопросы с несколькими вариантами ответов, и тут уже естественно нужно использовать Checkbox... а c JavaScript я еще пока плохо дружу

Вот собственно и сам код:
<HTML>
<HEAD>
<TITLE>Текст в окне браузера</TITLE>
</HEAD>
<BODY bgColor=white>
<SCRIPT language=JavaScript>

<!--Начало сценария

var res="111111"

function check_me()
<!--вместо "111111" нужно вставить последовательность правильных ответов
{
	var count=0
	with(document.test)
	
{

if (!Q1[0].checked&&!Q1[1].checked&&!Q1[2].checked&&!Q1[3].checked) 
{count+=1};
if (!Q2[0].checked&&!Q2[1].checked&&!Q2[2].checked&&!Q2[3].checked) 
{count+=1};
if (!Q3[0].checked&&!Q3[1].checked&&!Q3[2].checked&&!Q3[3].checked) 
{count+=1};
if (!Q4[0].checked&&!Q4[1].checked&&!Q4[2].checked&&!Q4[3].checked) 
{count+=1};
if (!Q5[0].checked&&!Q5[1].checked&&!Q5[2].checked&&!Q5[3].checked) 
{count+=1};
if (!Q6[0].checked&&!Q6[1].checked&&!Q6[2].checked&&!Q6[3].checked)  <!--скопируйте эту строку и вставьте ниже необходимое количество раз( взвисимости от количества вопросов), изменив Q6 на Q7, Q8 и т.д если добавляете количество вопросов

{count+=1};
		if (count>0) <!-- Вычисление и проверка все ли задания выполнены -->
{alert("Вы выполнили не все задания. Проверьте себя.")
} 
		else answer()
	}
}

function control(k,f1,f2,f3,f4,f5,f6)
 <!-- добавьте переменные f7, f8,... в зависимости от количества вопросов
{
	
if (k==1&&f1.checked) return true;
	
if (k==2&&f2.checked) return true;
	
if (k==3&&f3.checked) return true;
	
if (k==4&&f4.checked) return true;
	
if (k==5&&f5.checked) return true;
	
if (k==6&&f6.checked) return true;
<!--скопируйте эту строку и вставьте ниже необходимое количество раз( взвисимости от количества вопросов), изменив 6 на 7, 8 и т.д если добавляете количество вопросов	

return false;
}

function answer()
{
	
answ="";
	with(document)
	{
		
answ+=control(res.charAt(0),test.Q1[0],test.Q1[1],test.Q1[2],test.Q1[3])?"1":"0"
		
answ+=control(res.charAt(1),test.Q2[0],test.Q2[1],test.Q2[2],test.Q2[3])?"1":"0"
		
answ+=control(res.charAt(2),test.Q3[0],test.Q3[1],test.Q3[2],test.Q3[3])?"1":"0"
		
answ+=control(res.charAt(3),test.Q4[0],test.Q4[1],test.Q4[2],test.Q4[3])?"1":"0"
		
answ+=control(res.charAt(4),test.Q5[0],test.Q5[1],test.Q5[2],test.Q5[3])?"1":"0"
		
answ+=control(res.charAt(5),test.Q6[0],test.Q6[1],test.Q6[2],test.Q6[3])?"1":"0"
<!--скопируйте эту строку и вставьте ниже необходимое количество раз( взвисимости от количества вопросов), изменив 5 на 6, 7 и т.д если добавляете количество вопросов		
<!--Анализ результатов -->		
showResult();
	}
}

function showResult()
{
	var nok=0;
	var i,s;
	
for (i=0;i<answ.length;i++) {nok+=answ.charAt(i)=="1"?1:0;}
                  
if(nok<3) s='"НЕУДОВЛЕТВОРИТЕЛЬНО"';
                  
if(nok==3) s='"УДОВЛЕТВОРИТЕЛЬНО"';
	
if(nok>3 && nok<4) s='"УДОВЛЕТВОРИТЕЛЬНО"';
	
if(nok==4) s='"ХОРОШО"';
	
if(nok>4 && nok<6) s='"ХОРОШО"';
	
if(nok==6) s='"ОТЛИЧНО"';
	document.test.s1.
value="Количество правильных ответов "+nok+". Ваша оценка "+s+". Загляните в окно рядом с номером задания. Если ответ правильный, то там (+). Если Вы ошиблись, там (-).";
	

with(document.test)
	{
	if (answ.charAt(0)=="1") {T1.value=" +"} else {T1.value=" -"};
	
	if (answ.charAt(1)=="1") {T2.value=" +"} else {T2.value=" -"};
	
	if (answ.charAt(2)=="1") {T3.value=" +"} else {T3.value=" -"};
	
	if (answ.charAt(3)=="1") {T4.value=" +"} else {T4.value=" -"};
	
	if (answ.charAt(4)=="1") {T5.value=" +"} else {T5.value=" -"};
	
	if (answ.charAt(5)=="1") {T6.value=" +"} else {T6.value=" -"};
	}
}
</SCRIPT>

<FORM name=test>
<CENTER><FONT face=Arial,Helvetica,sans-serif color=#000099>
<H3>Название теста </H3></CENTER>

<OL>
  
<LI>
  <H4><INPUT size=1 name=T1> Вопрос 1 </H4>
<INPUT type=radio name=Q1> ответ 1.1 <BR>
<INPUT type=radio name=Q1> ответ 2.1 <BR>
<INPUT type=radio name=Q1> ответ 3.1 <BR>
<INPUT type=radio name=Q1> ответ 4.1 <BR><BR>

<LI>
  <H4><INPUT size=1 name=T2> Вопрос 2 </H4>
<INPUT type=radio name=Q2> ответ 1.2 <BR>
<INPUT type=radio name=Q2> ответ 2.2 <BR>
<INPUT type=radio name=Q2> ответ 3.3 <BR>
<INPUT type=radio name=Q2> ответ 4.4 <BR><BR>

<LI>
  <H4><INPUT size=1 name=T3> Вопрос 3 </H4>
<INPUT type=radio name=Q3> ответ 1.3 <BR>
<INPUT type=radio name=Q3> ответ 2.3 <BR>
<INPUT type=radio name=Q3> ответ 3.3 <BR>
<INPUT type=radio name=Q3> ответ 4.3 <BR><BR>

<LI>
  <H4><INPUT size=1 name=T4> Вопрос 4 </H4>
<INPUT type=radio name=Q4> ответ 1.4 <BR>
<INPUT type=radio name=Q4> ответ 2.4 <BR>
<INPUT type=radio name=Q4> ответ 3.4 <BR>
<INPUT type=radio name=Q4> ответ 4.4 <BR><BR>

<LI>
  <H4><INPUT size=1 name=T5> Вопрос 5 </H4>
<INPUT type=radio name=Q5> ответ 1.5 <BR>
<INPUT type=radio name=Q5> ответ 2.5 <BR>
<INPUT type=radio name=Q5> ответ 3.5 <BR>
<INPUT type=radio name=Q5> ответ 4.5 <BR><BR>

<LI>
  <H4><INPUT size=1 name=T6> Вопрос 6 </H4>
<INPUT type=radio name=Q6> ответ 1.6 <BR>
<INPUT type=radio name=Q6> ответ 2.6 <BR>
<INPUT type=radio name=Q6> ответ 3.6 <BR>
<INPUT type=radio name=Q6> ответ 4.6 <BR>

<LI>
  <H4><INPUT size=1 name=T7> Вопрос 7 </H4>
<INPUT type=checkbox name=answer1> ответ 1.7 <BR>
<INPUT type=checkbox name=answer2> ответ 2.7 <BR>
<INPUT type=checkbox name=answer3> ответ 3.7 <BR>
<INPUT type=checkbox name=answer4> ответ 4.7 <BR>

</LI></OL><BR>
<CENTER>
<P><TEXTAREA name=s1 rows=4 cols=70> </TEXTAREA> </P><INPUT onclick=check_me() 
type=button value="Показать результат">&nbsp;&nbsp;&nbsp;&nbsp; 
<INPUT type=reset value="Сбросить ответы"> </CENTER><BR><BR></FORM>
<P>
<H5>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;© автор., год</H5>
<P></P></FONT></BODY></HTML>


Помагите кто-нибудь, пожалуста, очень надо :confused:

Последний раз редактировалось $Dim@n$777, 13.01.2009 в 21:06.
Ответить с цитированием
  #2 (permalink)  
Старый 13.01.2009, 21:46
Отправить личное сообщение для Octane Посмотреть профиль Найти все сообщения от Octane  
Регистрация: 09.07.2008
Сообщений: 3,873

А что не работает то?

Получить элемент по атрибуту name
document.getElementsByName('answer1')[0]
Ответить с цитированием
  #3 (permalink)  
Старый 14.01.2009, 02:26
Интересующийся
Отправить личное сообщение для Ilya Посмотреть профиль Найти все сообщения от Ilya
 
Регистрация: 09.01.2009
Сообщений: 14

$Dim@n$777,

Я добавил в ваш код новые скрипты. Теперь подсчет будет вестись с учетом checkbox. Для того, чтобы выбрать правильные варианты ответа в checkbox, вам необходимо найти в коде вот эту строку

(document.test.answer1.checked==true)&&(document.test.answer2.checked==true)&&(document.test.answer3.checked==false)&&(document.test.answer4.checked==false)


В документе она встречается дважды. Это 70 и 120 строка. Редактировать необходимо обе строки. По умолчанию я установил, что если флажки установлены на первом и втором checkbox, то ответ правильный. Если вы хотите установить правильный ответ сами, то в этих строках вам необходимо поменять операторы true и false. true - это правильный ответ. false - неправильный. С баллами за правильный ответ разберетесь сами (если нет, то пишите).

А вот собственно сам код:

<HTML>
<HEAD>
<TITLE>Текст в окне браузера</TITLE>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
</HEAD>
<BODY bgColor=white>
<SCRIPT language=JavaScript>
 
<!--Начало сценария
 
var res="111111"
 
function check_me()
<!--вместо "111111" нужно вставить последовательность правильных ответов
{
if((document.test.answer1.checked)||(document.test.answer2.checked)||(document.test.answer3.checked)||(document.test.answer4.checked)) {

    var count=0
    with(document.test)
 
{

if (!Q1[0].checked&&!Q1[1].checked&&!Q1[2].checked&&!Q1[3].checked) 
{count+=1};
if (!Q2[0].checked&&!Q2[1].checked&&!Q2[2].checked&&!Q2[3].checked) 
{count+=1};
if (!Q3[0].checked&&!Q3[1].checked&&!Q3[2].checked&&!Q3[3].checked) 
{count+=1};
if (!Q4[0].checked&&!Q4[1].checked&&!Q4[2].checked&&!Q4[3].checked) 
{count+=1};
if (!Q5[0].checked&&!Q5[1].checked&&!Q5[2].checked&&!Q5[3].checked) 
{count+=1};
if (!Q6[0].checked&&!Q6[1].checked&&!Q6[2].checked&&!Q6[3].checked)  <!--скопируйте эту строку и вставьте ниже необходимое количество раз( взвисимости от количества вопросов), изменив Q6 на Q7, Q8 и т.д если добавляете количество вопросов
 
{count+=1};
        if (count>0) <!-- Вычисление и проверка все ли задания выполнены -->
{alert("Вы выполнили не все задания. Проверьте себя.")
} 
        else answer()
    }
	}
	else {
	alert("Вы выполнили не все задания. Проверьте себя.");
	}
}
 
function control(k,f1,f2,f3,f4,f5,f6)
 <!-- добавьте переменные f7, f8,... в зависимости от количества вопросов
{
 
if (k==1&&f1.checked) return true;
 
if (k==2&&f2.checked) return true;
 
if (k==3&&f3.checked) return true;
 
if (k==4&&f4.checked) return true;
 
if (k==5&&f5.checked) return true;
 
if (k==6&&f6.checked) return true;
<!--скопируйте эту строку и вставьте ниже необходимое количество раз( взвисимости от количества вопросов), изменив 6 на 7, 8 и т.д если добавляете количество вопросов    
 
return false;
}
 
function answer()
{
answ="";
 if((document.test.answer1.checked==true)&&(document.test.answer2.checked==true)&&(document.test.answer3.checked==false)&&(document.test.answer4.checked==false)) {
answ="1";
 }

    with(document)
    {
 
answ+=control(res.charAt(0),test.Q1[0],test.Q1[1],test.Q1[2],test.Q1[3])?"1":"0"
 
answ+=control(res.charAt(1),test.Q2[0],test.Q2[1],test.Q2[2],test.Q2[3])?"1":"0"
 
answ+=control(res.charAt(2),test.Q3[0],test.Q3[1],test.Q3[2],test.Q3[3])?"1":"0"
 
answ+=control(res.charAt(3),test.Q4[0],test.Q4[1],test.Q4[2],test.Q4[3])?"1":"0"
 
answ+=control(res.charAt(4),test.Q5[0],test.Q5[1],test.Q5[2],test.Q5[3])?"1":"0"
 
answ+=control(res.charAt(5),test.Q6[0],test.Q6[1],test.Q6[2],test.Q6[3])?"1":"0"
<!--скопируйте эту строку и вставьте ниже необходимое количество раз( взвисимости от количества вопросов), изменив 5 на 6, 7 и т.д если добавляете количество вопросов        
<!--Анализ результатов -->        
showResult();
    }
}
 
function showResult()
{
    var nok=0;
    var i,s;
 
for (i=0;i<answ.length;i++) {nok+=answ.charAt(i)=="1"?1:0;}
 
if(nok<3) s='"НЕУДОВЛЕТВОРИТЕЛЬНО"';
 
if(nok==3) s='"УДОВЛЕТВОРИТЕЛЬНО"';
 
if(nok>3 && nok<4) s='"УДОВЛЕТВОРИТЕЛЬНО"';
 
if(nok==4) s='"ХОРОШО"';
 
if(nok>4 && nok<6) s='"ХОРОШО"';
 
if(nok==6) s='"ОТЛИЧНО"';

if(nok==7) s='"ОТЛИЧНО"';
    document.test.s1.
value="Количество правильных ответов "+nok+". Ваша оценка "+s+". Загляните в окно рядом с номером задания. Если ответ правильный, то там (+). Если Вы ошиблись, там (-).";
 
 
with(document.test)
    {
	 if((document.test.answer1.checked==true)&&(document.test.answer2.checked==true)&&(document.test.answer3.checked==false)&&(document.test.answer4.checked==false)) {
		document.test.T7.value = " +";
 	 }
	 else {
	 	document.test.T7.value = " -";
	 }
	
    if (answ.charAt(0)=="1") {T1.value=" +"} else {T1.value=" -"};
 
    if (answ.charAt(1)=="1") {T2.value=" +"} else {T2.value=" -"};
 
    if (answ.charAt(2)=="1") {T3.value=" +"} else {T3.value=" -"};
 
    if (answ.charAt(3)=="1") {T4.value=" +"} else {T4.value=" -"};
 
    if (answ.charAt(4)=="1") {T5.value=" +"} else {T5.value=" -"};
 
    if (answ.charAt(5)=="1") {T6.value=" +"} else {T6.value=" -"};
    }
}
</SCRIPT>
 
<FORM name=test>
<CENTER><FONT face=Arial,Helvetica,sans-serif color=#000099>
<H3>Название теста </H3></CENTER>
 
<OL>
 
<LI>
  <H4><INPUT size=1 name=T1> Вопрос 1 </H4>
<INPUT type=radio name=Q1> ответ 1.1 <BR>
<INPUT type=radio name=Q1> ответ 2.1 <BR>
<INPUT type=radio name=Q1> ответ 3.1 <BR>
<INPUT type=radio name=Q1> ответ 4.1 <BR><BR>
 
<LI>
  <H4><INPUT size=1 name=T2> Вопрос 2 </H4>
<INPUT type=radio name=Q2> ответ 1.2 <BR>
<INPUT type=radio name=Q2> ответ 2.2 <BR>
<INPUT type=radio name=Q2> ответ 3.3 <BR>
<INPUT type=radio name=Q2> ответ 4.4 <BR><BR>
 
<LI>
  <H4><INPUT size=1 name=T3> Вопрос 3 </H4>
<INPUT type=radio name=Q3> ответ 1.3 <BR>
<INPUT type=radio name=Q3> ответ 2.3 <BR>
<INPUT type=radio name=Q3> ответ 3.3 <BR>
<INPUT type=radio name=Q3> ответ 4.3 <BR><BR>
 
<LI>
  <H4><INPUT size=1 name=T4> Вопрос 4 </H4>
<INPUT type=radio name=Q4> ответ 1.4 <BR>
<INPUT type=radio name=Q4> ответ 2.4 <BR>
<INPUT type=radio name=Q4> ответ 3.4 <BR>
<INPUT type=radio name=Q4> ответ 4.4 <BR><BR>
 
<LI>
  <H4><INPUT size=1 name=T5> Вопрос 5 </H4>
<INPUT type=radio name=Q5> ответ 1.5 <BR>
<INPUT type=radio name=Q5> ответ 2.5 <BR>
<INPUT type=radio name=Q5> ответ 3.5 <BR>
<INPUT type=radio name=Q5> ответ 4.5 <BR><BR>
 
<LI>
  <H4><INPUT size=1 name=T6> Вопрос 6 </H4>
<INPUT type=radio name=Q6> ответ 1.6 <BR>
<INPUT type=radio name=Q6> ответ 2.6 <BR>
<INPUT type=radio name=Q6> ответ 3.6 <BR>
<INPUT type=radio name=Q6> ответ 4.6 <BR>
 
<LI>
  <H4><INPUT size=1 name=T7> Вопрос 7 </H4>
<INPUT type=checkbox name=answer1> ответ 1.7 <BR>
<INPUT type=checkbox name=answer2> ответ 2.7 <BR>
<INPUT type=checkbox name=answer3> ответ 3.7 <BR>
<INPUT type=checkbox name=answer4> ответ 4.7 <BR>
 
</LI></OL><BR>
<CENTER>
<P><TEXTAREA name=s1 rows=4 cols=70> </TEXTAREA> </P><INPUT onclick=check_me() 
type=button value="Показать результат">&nbsp;&nbsp;&nbsp;&nbsp; 
<INPUT type=reset value="Сбросить ответы"> </CENTER><BR><BR></FORM>
<P>
<H5>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;© автор., год</H5>
<P></P></FONT></BODY></HTML>

Последний раз редактировалось Ilya, 14.01.2009 в 02:45.
Ответить с цитированием
  #4 (permalink)  
Старый 14.01.2009, 14:35
Новичок на форуме
Отправить личное сообщение для $Dim@n$777 Посмотреть профиль Найти все сообщения от $Dim@n$777
 
Регистрация: 10.01.2009
Сообщений: 5

Ilya, Спасибо большое)), сегодня буду пробывать доводить это до ума дальше...
Ответить с цитированием
  #5 (permalink)  
Старый 06.05.2009, 17:00
ivolgin
 
Сообщений: n/a

count = 0;
res = "433";
chb1ans = "1100";
chb2ans = "1101";
ta6ans = "баллада";

function check_me()
{
count = 0;
with(document.test)
{
if (!Q1[0].checked&&!Q1[1].checked&&!Q1[2].checked&&!Q1[3].checked)
{count+=1};
if (!Q2[0].checked&&!Q2[1].checked&&!Q2[2].checked&&!Q2[3].checked)
{count+=1};
if (!Q3[0].checked&&!Q3[1].checked&&!Q3[2].checked&&!Q3[3].checked)
{count+=1};
if (TA6.value == "")
{count++}
}

if(((document.test.answer1.checked)||(document.tes t.answer2.checked)||(document.test.answer3.checked )||(document.test.answer4.checked))&&((document.te st.answer5.checked)||(document.test.answer6.checke d)||(document.test.answer7.checked)||(document.tes t.answer8.checked))&&(count == 0))
{
answer();

} else
{
alert("Вы выполнили не все задания. Проверьте себя.");
}
}


function control(k,f1,f2,f3,f4,f5,f6)
{
if (k==1&&f1.checked) return true;
if (k==2&&f2.checked) return true;
if (k==3&&f3.checked) return true;
if (k==4&&f4.checked) return true;
if (k==5&&f5.checked) return true;
if (k==6&&f6.checked) return true;
return false;
}


function chbcheck(ans, chb1, chb2, chb3, chb4)
{
if (((ans.charAt(0)=="1") == chb1.checked) &&
((ans.charAt(1)=="1") == chb2.checked) &&
((ans.charAt(2)=="1") == chb3.checked) &&
((ans.charAt(3)=="1") == chb4.checked))
{
return true;
} else
{
return false;
}
}

function wrdcheck(corrans, givenans)
{
if (corrans == givenans.value)
{
return true;
}
else
{
return false;
}
}



function answer()
{
answ="";


with(document)
{
answ+=control(res.charAt(0),test.Q1[0],test.Q1[1],test.Q1[2],test.Q1[3])?"1":"0"
answ+=control(res.charAt(1),test.Q2[0],test.Q2[1],test.Q2[2],test.Q2[3])?"1":"0"
answ+=control(res.charAt(2),test.Q3[0],test.Q3[1],test.Q3[2],test.Q3[3])?"1":"0"
answ+=chbcheck(chb1ans, test.answer1, test.answer2, test.answer3, test.answer4)?"1":"0"
answ+=chbcheck(chb2ans, test.answer5, test.answer6, test.answer7, test.answer8)?"1":"0"
answ+=wrdcheck(ta6ans, test.TA6)?"1":"0"
}

showResult();
}


function showResult()
{
var nok=0;
var i,s;
for (i=0;i<answ.length;i++)
{
nok+=answ.charAt(i)=="1"?1:0;
}
if (nok<=1) s='"НЕУДОВЛЕТВОРИТЕЛЬНО"';
if((nok>=2) && (nok<=3)) s='"УДОВЛЕТВОРИТЕЛЬНО"';
if((nok>=4) && (nok<6)) s='"ХОРОШО"';
if(nok==6) s='"ОТЛИЧНО"';
document.test.s1.value="Количество правильных ответов "+nok+". Ваша оценка "+s+". Загляните в окно рядом с номером задания. Если ответ правильный, то там (+). Если Вы ошиблись, там (-).";
if (answ.charAt(0)=="1") {document.test.T1.value=" +"} else {document.test.T1.value=" -"};
if (answ.charAt(1)=="1") {document.test.T2.value=" +"} else {document.test.T2.value=" -"};
if (answ.charAt(2)=="1") {document.test.T3.value=" +"} else {document.test.T3.value=" -"};
if (answ.charAt(3)=="1") {document.test.T4.value=" +"} else {document.test.T4.value=" -"};
if (answ.charAt(4)=="1") {document.test.T5.value=" +"} else {document.test.T5.value=" -"};
if (answ.charAt(5)=="1") {document.test.T6.value=" +"} else {document.test.T6.value=" -"};
}
Ответить с цитированием
  #6 (permalink)  
Старый 10.06.2012, 14:29
Новичок на форуме
Отправить личное сообщение для segastep Посмотреть профиль Найти все сообщения от segastep
 
Регистрация: 10.06.2012
Сообщений: 3

Здравствуйте помогите мне пожалуйства разобраться в некоторых строчках этого кода в сообщении1:
В function check_me() разобрался,
Помогите разобраться с function control, function answer(), function showResult(). Желательно с каждой строчкой кода, буду очень благодарен
Ответить с цитированием
  #7 (permalink)  
Старый 10.06.2012, 16:16
Новичок на форуме
Отправить личное сообщение для segastep Посмотреть профиль Найти все сообщения от segastep
 
Регистрация: 10.06.2012
Сообщений: 3

помогите хотяб разобратьтся с function control, function answer()
Ответить с цитированием
  #8 (permalink)  
Старый 10.06.2012, 17:01
Аватар для vadim5june
Студент
Отправить личное сообщение для vadim5june Посмотреть профиль Найти все сообщения от vadim5june
 
Регистрация: 30.04.2012
Сообщений: 1,113

Сообщение от segastep Посмотреть сообщение
помогите хотяб разобратьтся с function control, function answer()
answer подсчитывает кол-во правильных ответов
а control определяет правильный ли ответ на данный вопрос
Ответить с цитированием
  #9 (permalink)  
Старый 10.06.2012, 17:09
Новичок на форуме
Отправить личное сообщение для segastep Посмотреть профиль Найти все сообщения от segastep
 
Регистрация: 10.06.2012
Сообщений: 3

Сообщение от vadim5june Посмотреть сообщение
answer подсчитывает кол-во правильных ответов
а control определяет правильный ли ответ на данный вопрос
ну мне это уже сказали function answer — считает количество правильных ответов
function control — сравнивает каждый из ответов с правильным
function showResult — выводит результат , а можно по подробней как он щитает например function answer() сначала берет первый символ из res потом чё и как делает непонятно потом то сумирует 1 то 0
Ответить с цитированием
  #10 (permalink)  
Старый 10.06.2012, 17:19
Аватар для vadim5june
Студент
Отправить личное сообщение для vadim5june Посмотреть профиль Найти все сообщения от vadim5june
 
Регистрация: 30.04.2012
Сообщений: 1,113

answ+=control(res.charAt(0),test.Q1[0],test.Q1[1],test.Q1[2],test.Q1[3])?"1":"0"
Если результат выполнения функции control будет true то прибавляется1-если false- то 0
test.Q1-это элементы формы с name='test'
В его примере на каждый вопрос 4 ответа и в функции control как раз проверяются
например-правильный ответ(который задается в res должен совпадать с ответом отвечающего-например 3
if (k==3&&f3.checked) return true;

Последний раз редактировалось vadim5june, 10.06.2012 в 17:25.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
добавление окошка в скрипт подсчета слов Гость Общие вопросы Javascript 10 11.03.2008 16:07