Livevalidation - как игнорировать скрытые поля?

У меня есть форма с раскрывающимся списком от 1 до 10. Если пользователь выбирает 1-9, то должно отображаться определенное дополнительное поле абзаца. И если пользователь выбирает 10, то должно появиться другое поле абзаца.

Я разобрался с некоторым javascript для отображения полей второй формы (вероятно, это не самый элегантный способ сделать это, поэтому предложения приветствуются). Затем я использовал код livevalidation, чтобы, если пользователь не сделал никакого выбора (выпадающий выбор остается на "Выбрать один" вместо 1–10), то вместо отправки формы появится ошибка в поле с раскрывающимся списком.

Теперь я хотел бы сделать еще один шаг и потребовать дополнительное поле, которое показывает, но сделать поле, которое скрыто, не обязательным. Таким образом, если выбран 1 -9, второе поле показывает И будет единственным обязательным полем. Но если выбрано 10, то его конкретное второе поле будет отображаться и будет единственным обязательным полем.

Я попробовал пару вещей, но не смог получить форму для отправки, потому что я думаю, что скрытое поле все еще требуется.

Вот мой JS для определения выпадающего списка и отображения второго поля:

<script type="text/javascript">
function selectionChanged()
{
if(document.getElementById("field0").value == "blank")
{   
document.getElementById("formElement1").style.display="none";
document.getElementById("formElement2").style.display="none";
}
else if(document.getElementById("field0").value == "10")
{
document.getElementById("formElement1").style.display="none";
document.getElementById("formElement2").style.display="inline";
}
else
{
document.getElementById("formElement1").style.display="inline";
document.getElementById("formElement2").style.display="none";
}

return true;
}
</script>

И вот код для livevalidation, чтобы показать ошибку, если выпадающий выбор не сделан и оставлен на Choose One:

<script type="text/javascript" >var field0 = new LiveValidation('field0', {onlyOnSubmit: true });
field0.add( Validate.Exclusion, { within: [ 'blank' ], failureMessage: 'Please make a selection' } );</script>

Надеюсь, что это имеет смысл, и кто-то может помочь. Спасибо!

0 ответов

Другие вопросы по тегам