2017-04-02 75 views
1

我有一個表格,其中有幾個字段都在類別Contact中,它們具有共同的標題。當字段爲空時,在表單提交時將元素添加到元素

我需要該標題在用戶點擊提交併填寫任何聯繫人字段時變成紅色。這些字段(名字,姓氏,公司,Marketing_Phone,電子郵件)在提交空時已添加error類。

這些字段都在類別wrap_contact的標籤Contact Information *。此標籤不提供收到類error提交。這是我需要補充的。我給了該標籤的編號爲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

回答

0

問題是您的submit仍然出現,頁面重新加載。您需要添加event.preventDefault()event.stopPropagation()以防止submit動作發生並重新加載頁面。另外,因爲你使用的是jQuery,你可以簡單地使用return false這兩者都可以。請參閱:https://stackoverflow.com/a/1357151/1736092

+0

()'不需要'stopPropagation在提交事件 – charlietfl

+0

如果我們做一個stopPropogation,它是如何允許一旦所有必填字段已滿,最終的行動是? –

+0

也許我需要澄清。表單提交,當它發生時,錯誤類自動添加到任何不驗證的字段。所以。我需要if語句,如果任何聯繫人字段上有類錯誤,那麼label2類需要添加錯誤。 –

0

如果x元素有一個類,然後添加類爲y元素:

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