10

<input type="submit">フォームを送信するためのボタンがフォーム自体の外にあるため、単純な HTML5 フォームはありません。フォームには、プロパティが設定された入力がいくつかありますrequired="required"

送信するフォームの外側のボタンには、次のコードが添付されています。

$('#upgrade_submit').click(function(){
    $('#cc-form-modal').submit();
    return false;
});

ボタンをクリックすると、必須フィールドで通常の HTML5 検証が実行されません。私は何を間違っていますか?送信を「強制」する前にフォームが有効かどうかを確認する方法はありますか?

4

1 に答える 1

14

次のような隠し送信入力要素を追加することで、目標を達成しました。

<input type="submit" class="submit" style="display:none;">

次に、次のコードを外部送信ハンドラーにアタッチします。

$('#upgrade_submit').click(function(){
    $('#cc-form-modal .submit').click();
    return false;
});

これにより、HTML5 の検証が実行され、デフォルトのエラー メッセージが表示され、すべてが正常に機能します。

于 2013-10-09T19:32:09.210 に答える