Проверка CheckBox
Жаль, но сейчас для checkbox не получается проверить значения для box. Не пойму, в чем же я ошибаюсь, пробовала пару вариантов. Замучалась уже, на одни и те же грабли наступаю ... (((
for(k=0; k<3; k++) {
o=document.getElementsByName("boxo["+k+"]");
ok=false;
for(j=0; j<o.length; j++) {
alert(o[j].value);
x=document.getElementsByName("box["+j+"]");
alert(x.value);
if (o[j].checked) {
ok=true;
break;
};
};
}
<div class="line1">
input type="checkbox" name="box[0]" value="11">
<input type="hidden" name="boxo[4]" value="Text1" /><span>Text1</span>
</div>
<div class="line1">
input type="checkbox" name="box[1]" value="11">
<input type="hidden" name="boxo[4]" value="Text1" /><span>Text2</span>
</div>
<div class="line1">
input type="checkbox" name="box[2]" value="11">
<input type="hidden" name="boxo[4]" value="Text1" /><span>Tex3</span>
</div>
|
А что нужно то?
|
С checkbox наконец разобралась, вот только не могу понять, почему не выводит сообщение в самом конце
alert("Заполните!\n"+er);
function checkx() {
var er='';
var i,j,k,v,o,ok,t;
for(i=0; i<22; i++) {
v=document.fr.vopros[i].value;
k=i+1;
switch(v) {
case "radio":
o=document.getElementsByName('rad['+k+']');
ok=false;
for(j=0; j<o.length; j++) {
if (o[j].checked) {
ok=true;
break;
};
};
if (!ok) {
er+='Вопрос'+k+'\n';
};
break;
case "check":
o=document.getElementsByName("bxx["+k+"]");
ok=false;
for(j=0; j<o.length; j++) {
if (o[j].checked) {
ok=true;
break;
};
};
if (!ok) {
er+='Вопрос'+k+'\n';
};
break;
case "text":
t=document.fr['ans'+k].value;
if(t.length<2) er+='Вопрос'+k+'\n';
break;
}
alert(er); // Выводит сообщение
}
if(er=='') {
document.fr.submit();
} else {
alert("Заполните!\n"+er); // Почему-то не выводит сообщение
}
}
|
там может скобку на строке 40 нужно ниже перенести
|
Я пробовала такой вариант, но он совершенно не реагирует ...........
Хотя в похожем ниже приведенном варианте всё нормально работает. Никак не могу понять, в чем же разница и что мешает.
function radf() {
var er='';
var i,j,o,ok;
for(i=1; i<26; i++) {
o=document.getElementsByName('rad['+i+']');
ok=false;
for(j=0; j<o.length; j++) {
if (o[j].checked) {
ok=true;
break;
};
};
if (!ok) {
er+='Вопрос'+i+'\n';
};
};
if(er=='') {
document.fr.submit();
} else {
alert("Заполните!\n"+er);
}
}
|
| Часовой пояс GMT +3, время: 05:07. |