Здравствуйте!
Помогите реализировать. Есть форма и кнопка (submit). По дефолту кнопка неактивная, и при вводе верного ответа в поле формы, активируется. Скрипт проверки:
q = new Array();
q['q1'] = '4';
function checkQ(str) {
if(document.getElementById(str).value.toUpperCase() == q[str])
{
validate1(str);
}
else
{
validate2(str);
}
}
function validate1(qstr)
{
if(document.getElementById(qstr).disabled == false)
{
document.getElementById(qstr).disabled = true;
document.getElementById(qstr).style.border = '2px solid #00FF00';
}
}
function validate2(qstr) {
if(document.getElementById(qstr).value=='') {
document.getElementById(qstr).style.border = '1px solid #A5ACB2';
}
else
{
document.getElementById(qstr).style.border = '2px solid #FF0000';
}
}
и сам HTML:
<table class=head cellSpacing=5 cellPadding=5 align=center order=0>
<tbody>
<tr class=rows>
<td>2 + 2 =</td>
<td><input id=q1 onkeyup="javascript:checkQ('q1')"></td>
</tr>
</tbody>
</table>
<table class=head cellSpacing=5 cellPadding=5 align=center border=0>
<tbody>
<tr>
<td>
<form action="" method="" name="goNext">
<input name="next" type="submit" value="Next" disabled="disabled">
</form>
</td>
</tr>
</tbody>
</table>
Пробовал так:
function validate1(qstr)
{
if(document.getElementById(qstr).disabled == false)
{
document.getElementById(qstr).disabled = true;
document.getElementById(qstr).style.border = '2px solid #00FF00';
document.goNext.elements['next'].disabled = false;
}
}
И так:
function validate1(qstr)
{
if(document.getElementById(qstr).disabled == false)
{
document.getElementById(qstr).disabled = true;
document.getElementById(qstr).style.border = '2px solid #00FF00';
document.getElementById(next).disabled = false;
}
}
Новий HTML:
<table class=head cellSpacing=5 cellPadding=5 align=center border=0>
<tbody>
<tr>
<td>
<input id=next type="submit" value="Next" disabled="disabled">
</td>
</tr>
</tbody>
</table>
Удалось только провести проверку ввода ответа, а кнопка так и остается неактивной
Буду очень благодарен за помощь!