2017-04-16 9 views
0

私は、ページがロードされたときにサブミットボタンが無効になっているフォームを持っています。クラスが削除されたときにフォーム送信ボタンを有効にする

window.onload=function() 
{ 
    document.getElementById('form_submit').disabled = true; 
} 

インクルードが空または不正なフィールドである場合には、以下のクラスは、入力フィールドに追加されます。すべてのエラーや警告クラスが提出削除されています

if(document.getElementById('thickness').value == false) 
{ 
    document.getElementById('div_thickness').className = "form-group has-warning"; 
} 
else if(document.getElementById('thickness').value > 1 && document.getElementById('thickness').value < 7) 
{ 
    document.getElementById('div_thickness').className = "form-group has-success"; 
} 
else 
{ 
    document.getElementById('div_thickness').className = "form-group has-error"; 
} 

を再び有効にする必要がありますが、ボタンの滞在無効にする。私は行方不明の競合はありますか?

if(document.getElementsByClassName('has-error') || document.getElementsByClassName('has-warning')) 
{ 
    document.getElementById('form_submit').disabled = true; 
} 
else 
{ 
    document.getElementById('form_submit').disabled = false; 
} 

答えて

1

要素をクエリすると、空の配列が返されるため、何かがあります。あなたは、配列の長さをチェックする必要があります。

if(document.getElementsByClassName('has-error').length > 0 || document.getElementsByClassName('has-warning').length > 0) 
+0

このヒントをお寄せいただきありがとうございます。 – Muiter

+0

歓迎します:-) –

0

else if(document.getElementById('thickness').value > 1 && document.getElementById('thickness').value < 7) 
 
    { 
 
     document.getElementById('div_thickness').className = "form-group has-success"; 
 
    if(document.getElementById("#div_thikness").classList.contain('form-group has-error'){ 
 
    $document.getElementById('#div_thickness).classList.remove('has-error); 
 
    } 
 
if(document.getElementById("#div_thikness").classList.contain('form-group has-warning'){ 
 
    $document.getElementById('#div_thickness).classList.remove('has-warning); 
 
    } 
 
    }​

更新上記のコードを削除する必要が成功を持って成功を追加し、警告を持っているとしているエラークラスではない場合にのみ、 。

関連する問題