如何使用此命名约定验证表单客户端

How can I validate form client-side with this naming convention

本文关键字:表单 客户端 验证 命名约定 何使用      更新时间:2023-09-26

我有一个表单,其中包含一些简单的javascript来验证一个简单的问卷。它在表单中的输入中使用了 name 属性,但现在页面已与客户 CMS 集成,它需要使用我无法工作的特定命名约定。

旧表单具有如下输入: <input type="text" name="firstName" />

但是对于CMS,所有字段都需要"fields[firstName]",例如: <input name="fields[first-name]">

我如何让它工作。

现有JS如下:

function validate_form ( )
{
    valid = true;
    if ( ( document.register.question[0].checked == false ) && ( document.register.question[1].checked == false ) && ( document.register.question[2].checked == false ) )
    {
        alert ( "Please choose an answer" );
        valid = false;
    }
    else if ( document.register.form_title.value == "" )
    {
        alert ( "Please fill in the 'Title' box." );
        valid = false;
    }
    else if ( document.register.fName.value == "" )
    {
        alert ( "Please add your First Name" );
        valid = false;
    }
    else if ( document.register.lName.value == "" )
    {
        alert ( "Please add your Last Name" );
        valid = false;
    }
    else if ( document.register.email.value == "" )
    {
        alert ( "Please add a valid email address" );
        valid = false;
    }
    else if ( document.register.country.selectedIndex == 0 )
    {
        alert ( "Please select your Country" );
        valid = false;
    }
    else if ( document.register.dob1.selectedIndex == 0 )
    {
        alert ( "Please ensure your date of birth is complete" );
        valid = false;
    }
    else if ( document.register.dob2.selectedIndex == 0 )
    {
        alert ( "Please ensure your date of birth is complete" );
        valid = false;
    }
    else if ( document.register.dob3.selectedIndex == 0 )
    {
        alert ( "Please ensure your date of birth is complete" );
        valid = false;
    }
    else if ( document.register.terms.checked == false )
    {
        alert ( "Please check the Terms & Conditions box." );
        valid = false;
    }

    return valid;
}

你可以将jquery与这样的东西一起使用:

$("input[name=fields''[first-name'']]").val()