2

呼び出されません。ただし、Sharepointでフォームをホストすると機能しません。Sharepointのは、私は外部のウェブサイトにJSONで解析された値を送信POSTメソッドで<strong>作業フォーム</strong>を持って

私は、SharePointが唯一のフォームタグでのgetElementsByClassNameしたくなかったので、div要素でフォームをラップする必要がありました。

送信ボタンのaddEventListenerファンクションが実行されていません。handleFormSubmitを実行しています。コンソールにエラーは表示されません。

HTML(短縮):

<div id="formAbc"> 
    <form class="content__form abc"> 
     <div class="abc__input-group"> 
      <label class="abc__label" for="iNumber">iNumber</label> 
      <input class="infrastruktur__input infrastruktur__input--text" id="iNumber" name="iNumber" type="text"/> 
     </div> 
     <div class="abc__input-group"> 
      <label class="abc__label" for="machineName">machineName</label> 
      <input class="abc__input abc__input--text" id="machineName" name="machineName" type="text"/> 
     </div> 
     <button class="abc__button" type="submit">Absenden</button> 
    </form> 
</div> 

Javascriptを: のaddEventListener:

const Formtest = document.getElementById('formAbc'); 
console.log(Formtest); 
Formtest.addEventListener('submit', handleFormSubmit); 

handleFormSubmit:

const handleFormSubmit = event => { 
    event.preventDefault(); 
    console.log("default prevented"); 
/// handling Data 
}; 

はまた

ですべての私のjavascriptを包むテスト10
document.onreadystatechange = function() { 
    if (document.readyState == "interactive") { 
     //code 
    } 
} 

んSharepointのは、「提出」で物事を処理受け入れ、私はボタンのonclick()イベントを作成しなければならないのか、私はどこかに誤りがありますか?

+0

'submit'ハンドラをフォーム要素に直接追加しようとしましたか? – Maluen

答えて

0

問題は、SharePointがCEWP内でこれらを許可しないよう、<form>タグのようです。 代わりに<fieldset>タグを使用してこれを解決し、すべての問題を解決しました。あなたは<myform>としてcostumタグを使用できますが

<fieldset> 
.... 
</fieldset> 

、これはform.elementsを破るだろうし、それが動作しません。

関連する問題