2017-06-12 20 views
0

wordpressのninjaフォームからいくつかのフォーム要素にaria-required = "true"属性を追加しようとしています。私はプラグインを挿入するヘッダー/フッターのスクリプトを使用しています。しかし、私のコードを実際に動かすことはできません。どんな助けでも大歓迎です!aria属性を追加するjavascript

http://champion.magnet.today/contact/

<script> 
 
function codeAddress() { 
 
    var x = document.getElementsByClassName("nf-element"); 
 
    var i; 
 
    for (i = 0; i < x.length; i++) { 
 
     x[i].addAttribute("aria-required", "true"); 
 
    } 
 
window.onload = codeAddress 
 
} 
 
</script>
<div class="nf-field-element"> 
 
    <input id="nf-field-17" name="nf-field-17" class="ninja-forms-field nf-element" type="text" value="" placeholder="First Name"> 
 
</div>

答えて

0

あなたはsetAttributeを使用する必要がx[i].setAttribute("aria-required", "true");

0

x[i].addAttribute("aria-required", "true");を交換してみてください。またcodeAddress機能

function codeAddress() { 
 
    var x = document.getElementsByClassName("nf-element"); 
 
    var i; 
 
    for (i = 0; i < x.length; i++) { 
 
    console.log(x[i]) 
 
    x[i].setAttribute("aria-required", "true"); 
 
    } 
 

 
} 
 
window.onload = codeAddress
<div class="nf-field-element"> 
 
    <input id="nf-field-17" name="nf-field-17" class="ninja-forms-field nf-element" type="text" value="" placeholder="First Name"> 
 
</div>

+0

外にする必要がありますwindow.loadただ、まだ運、ことを試みました。フォーム要素がninjaフォームプラグインを介して生成されているかどうかはわかりません。私はそれを実行するためにボタンを使用してそれをテストし、それは動作するようです。関数なしでページ全体を処理する方法はありますか? –

+0

おそらく最良の方法ではありませんが、私は遅延を使用しており、今は正常に動作しているようです。 setTimeout(function(){codeAddress();}、2000); –

関連する問題