如果字段为空,则在提交表单时将元素添加到元素

时间:2017-04-02 17:51:09

标签: javascript jquery html css forms

我的表单在类Contact中有多个具有公共标题的字段。

每当用户点击提交并且未填写任何联系人字段时,我都需要将该标题变为红色。提交为空时,这些字段(first_name,last_name,company,Marketing_Phone,email)已添加了类error

这些字段都在班级wrap_contact中,标签为Contact Information *。此标签不会在提交时收到类error。这是我需要添加的内容。我给标签的ID为label2。所以,如果是,那么如果first_name,last_name,company,Marketing_phone或email在提交时为空,那么label2已添加error类。

我尝试添加以下代码,但它无效。

 $( "#pardot-form" ).submit(function( event ) {
    var someElements = document.querySelector("p.error,input[name=263882_11763pi_263882_11763]}");

    if (someElements !== "") {
       document.getElementById('p.label2').addClass = 'error';
    }

 };

此表单可在http://link.rubiconglobal.com/l/263882/2017-03-24/7ssj在线查看。

2 个答案:

答案 0 :(得分:0)

问题是您的submit仍然出现并且页面已重新加载。您需要添加event.preventDefault()event.stopPropagation()以阻止submit操作发生并重新加载页面。或者,由于您使用的是jQuery,因此只需return false即可。请参阅:https://stackoverflow.com/a/1357151/1736092

答案 1 :(得分:0)

如果x元素有一个类,则将类添加到y元素:

     <script>
     if( $('.first_name, .last_name, .company, .zip, .Marketing_Phone, .email').hasClass('error') === true ) 
    {
    $('p#label2').addClass('label2error');
    }
    </script>