ご注意!

この記事にはPHPとJavaScriptのコードが含まれており、開発者を対象としています。このコードは便宜上提供していますが、コードのカスタマイズやサードパーティの開発についてはサポートを提供していません。

追加のガイダンスについては、WPBeginner の カスタムコードの追加方法に関するチュートリアル を参照してください。

閉じる

一行テキストフォームフィールドで数値を制限する方法

一行テキストフィールドへの数字入力をユーザーに防止しますか?入力マスクを使用してフィールドをアルファベットのみに制限することはできますが、このガイドでは、大文字と小文字の両方を許可し、数字をブロックする、より柔軟なソリューションを作成する方法を示します。

このチュートリアルでは、これらのフィールドで数字を制限するために必要なコードスニペットを示します。

フォームの設定

まず、新しいフォームを作成し、制限したい一行テキストフィールドを追加します。例として、ユーザー名フィールドとして使用します。フォームの作成にヘルプが必要な場合は、最初のフォームの作成ガイドをご覧ください。

コードで使用するため、フォームIDとフィールドIDをメモしておいてください。これらのIDの見つけ方がわからない場合は、フォームとフィールドIDの見つけ方のガイドを確認してください。

検証コードの追加

このコードは、フィールドで数字が検出された場合にフォームの送信を防止します。サイトへのコードの追加にヘルプが必要な場合は、WordPressサイトへのカスタムコードの追加ガイドをご覧ください。

PHPコードの以下の値を置き換えます:

  • 11行目1000をフォームIDに置き換えてください
  • 17行目25をフィールドIDに置き換えます
  • 22行目25を再度フィールドIDに置き換えます

フォーム送信時にユーザー名フィールドに数字が含まれている場合、エラーメッセージが表示され、フォームは送信されません。

これで、一行テキストフォームフィールドで数字を制限できます

リアルタイム検証オプション

フォーム送信前にユーザーが数字を入力するのを防ぎたい場合は、リアルタイム検証を実装できます。方法は次のとおりです:

まず、フォームを編集し、一行テキストフィールドを選択した状態で、フィールドオプションの下にある詳細設定タブをクリックし、CSSクラスフィールドにno-numbersを追加します。

次に、このJavaScriptコードをサイトに追加します:

スニペットが追加されると、訪問者がフィールドからタブアウトまたはクリックアウトしたときに、検証エラーを警告する即時エラーメッセージが表示されます。

参照アクション

wpforms_process

一行テキストフォームフィールドへの特殊文字の入力を防止したいですか?フォームフィールドからの特殊文字の制限方法のチュートリアルをご覧ください。