使用单选按钮和特定错误进行表单验证

时间:2013-08-28 12:58:30

标签: javascript html forms validation

我正在尝试使用单选按钮和textarea进行表单验证。我希望没有什么可以留空,即表格应该完全填满。我已经完成了验证的单选按钮部分,如果用户没有选择单选按钮,他将收到该特定问题的错误。您可以看到代码here以获取详细代码。

请帮帮我。我没有收到textarea的错误。

3 个答案:

答案 0 :(得分:2)

只需为textarea添加另一张支票

function RadioValidator() {
    var ShowAlert = '';
    var AllFormElements = window.document.getElementById("FormID").elements;
    for (i = 0; i < AllFormElements.length; i++) {
        var name = AllFormElements[i].name;
        if (AllFormElements[i].type == 'radio') {
           ....       
        } else if (AllFormElements[i].type == 'textarea') {
            if (AllFormElements[i].value == '') {
                ShowAlert += name + ' textarea must be filled\n';
            }
        }
    }
    if (ShowAlert !== '') {
        alert(ShowAlert);
        return false;
    } else {
        return true;
    }
}

答案 1 :(得分:0)

您还需要为textarea添加支票

javascript检查中,您只添加了radio.类型的条件 检查textarea类型,如果值为空,则添加错误。

答案 2 :(得分:0)

你没有为'textarea'块写任何验证。我用一个textarea更新了它...添加其他验证。

function RadioValidator()
{
    var ShowAlert = '';
    var AllFormElements = window.document.getElementById("FormID").elements;
    for (i = 0; i < AllFormElements.length; i++) 
    {
        if (AllFormElements[i].type == 'radio') 
        {
            var ThisRadio = AllFormElements[i].name;
            var ThisChecked = 'No';
            var AllRadioOptions = document.getElementsByName(ThisRadio);
                        var problem_desc = document.getElementById("problem_desc");

            for (x = 0; x < AllRadioOptions.length; x++)
            {
                 if (AllRadioOptions[x].checked && ThisChecked === 'No' && problem_desc.value === "")
                 {
                     ThisChecked = 'Yes';
                     break;
                 } 
            }

            var AlreadySearched = ShowAlert.indexOf(ThisRadio);
            if (ThisChecked == 'No' && AlreadySearched == -1 && problem_desc.value === "")
            {
            ShowAlert = ShowAlert + ThisRadio + ' option must be selected\n';
            }
        }else if(AllFormElements[i].type =='textarea')
        {
          // add your rest of text area validations here

          var problem_desc_1 = document.getElementById("problem_desc");
          if(problem_desc_1.value === "")
          {

            ShowAlert = ShowAlert + '"Services (Please Specify)" can not be blank. \n';
          }


        }
    }
    if (ShowAlert !== '')
    {
    alert(ShowAlert);
    return false;
    }
    else
    {
    return true;
    }
}