2017-05-07 4 views
1

フォーム内での送信の伝播を停止することに問題があります。イベントが発生したウェブページ内のどこをクリックしても、送信ボタンをクリックしたときにどのようにしか起動できないように見えますか?同じクラスにsubmitPropagation()が正常に動作しない

+1

''有効なタグ名ではありません。 – n00dl3

+0

@ n00dl3おっと。ありがとう。人々は提出物を巡回する場合、同じクラスに追加しますか? – cafekaze

答えて

1

提出は、次のコードを使用して送信ボタンを見つけることができ、有効なタグではありません

var submitButtons = document.getElementByTagNames('button').filter(function(button){ 
    return (button.getAttribute('type') === 'submit') 
); 
0
document.addEventListener('DOMContentLoaded', bindButtons); 

function bindButtons() { 
    var buttons = document.getElementsByTagName('submit'); 

    Array.prototype.forEach.call(buttons, addEventListener('click', function(event) { 
     var req = new XMLHttpRequest(); 
     req.open("GET", url, true); 

     req.addEventListener('load', function(event) { 
      // do stuff 
     }) 

     event.preventDefault(); 
     event.stopPropagation(); 

     req.send(null);  
    })) 
} 

追加された各submitは次にgetElementsByClass()を使用して、アレイ内のものが格納され、その上に繰り返します。

var submitButtons = document.getElementByTagNames('button').filter(button => button.getAttribute('type') === 'submit'); 

または、より冗長:

関連する問題