私は単純な単一フィールドのニュースレターのサインアップフォームを1つの入力フィールドと送信ボタンがあります。私はタグを使用して、onclick
プロパティをjavacript関数に設定して、 '必須'フィールドのHTML5チェックを強制してフォームを送信します。この設定はデスクトップではうまくいきますが、モバイルデバイスではまったく動作しません。その理由はわかりません。携帯端末でHTMLフォームが機能していない
newsletterForm.html
<form action="formSubmit.php" method="POST">
<label for="emailfield">Email here:</label>
<input type="text" name="email" id="emailfield" required>
<input type="submit" name="submit" id="submithandler" style="position:absolute;top:0;left:-9999px;width:1px;height:1px>
<a onclick="submitform();">Sign up</a>
</form>
handleforms.js
function submitform() {
document.getElementById('submithandler').click();
}
私が特別に使用したかったので、私は<a>
タグを使用していた。ここで
<input type='submit'>
タグを使用していないスタイリング。ただし、送信bにスタイルを強制する方法がある場合utton、それはいいだろう。
ユーザーがボタンまたはリンクをクリックすると、「必須」入力フィールドのHTML5チェックを強制するために、<input type='submit'>
フォーム要素のクリックをエミュレートする必要があります。モバイルとどのように私はそれを修正することができに機能してからこの設定を妨げる何
?私は私のコードについての批判やコメントに開いている
は、私が教えて喜んで誰からも学ぶことを願っています。
なぜ機能するのですか?だけでなく、答え。 Thx – Elec
ユーザーがクリックイベントを引き起こした場合は、間違いなく動作しますが、スクリプトがクリックイベントを引き起こした場合、一部のブラウザがスクリプト内のワームやウイルスを認識し、ハンドラを起動しないため、すべてのケースで動作しない可能性があります。また、Jqueryでも$(elem).click(); $(elem).trigger( "click")を保証するものではありません。場合によっては動作します。 –
私の主な関心事は、 '$(elem).submit()は必須フィールドのHTML5自動処理を起動しないということです。これがどのように達成されるか知っていますか? – SuperContraptionGuy