AI要約
フォームの特定のフィールドに、あの厄介な特殊文字を含めたくないと思ったことはありませんか?ユーザーが不適切な絵文字や記号を入力するのにうんざりしていませんか?このガイドでは、JavaScriptを使用して、1行テキストや段落などのフィールドで不要な文字を防ぐ方法を説明します。さあ、始めましょう。フォームをもう少し整理整頓しましょう!
入力マスクという言葉を聞いたことがありますか?フォームフィールドのウィザードのようなもので、コーディングなしでユーザーが情報を入力する方法を正確に制御できます!そして、何だと思いますか?入力マスクを使用して、不要な特殊文字を防ぐこともできます。これらのマスクのカスタマイズに興味があり、さらに詳しく知りたい場合は、お任せください。カスタム入力マスクの使用に関する包括的なガイドをチェックして、すべての詳細を確認してください。
特殊文字の制限
行動する準備はできましたか?まず、これらのスニペットをサイトに追加しましょう。以下に、2つのコードスニペットがあります。1つは厄介な特殊文字を防ぐためのもので、もう1つはユーザーがフォームフィールドに貼り付けるのを防ぐためのものです。
これらのスニペットをサイトに追加する方法がわからない場合は、心配しないでください!WPForms用のカスタムPHPまたはJavaScriptの追加に関する便利なチュートリアルがあります。ステップバイステップのガイダンスについては、そちらをご覧ください。
/**
* Restrict special characters from forms fields with special CSS class
* Apply the class "wpf-char-restrict" to the field to enable.
*
* @link https://wpforms.com/developers/how-to-restrict-special-characters-from-a-form-field/
*/
function wpf_dev_char_restrict() {
?>
<script type="text/javascript">
jQuery(function($){
//Prevent any special characters in form fields with this CSS class name
$( '.wpf-char-restrict' ).on( 'keypress', function(e){
var regex = new RegExp("^[0-9a-zA-Z \b]+$");
var key = String.fromCharCode(!event.charCode ? event.which: event.charCode);
if (!regex.test(key))
{
alert ( "Special characters are not allowed in this field" ); // Put any message here
event.preventDefault();
return false;
}
});
//Prevent any paste features in form fields with this CSS class name
$( '.wpf-char-restrict' ).bind( 'copy paste', function (e) {
var regex = new RegExp( "@" );
var key = String.fromCharCode(!event.charCode ? event.which : event.charCode);
if (!regex.test(key)) {
alert ( "Pasting feature has been disabled for this field" ); // Put any message here
e.preventDefault();
return false;
}
});
});
</script>
<?php
}
add_action( 'wpforms_wp_footer_end', 'wpf_dev_char_restrict', 10 );
最初の関数では、キーボードから特殊文字を入力できないようにしています。2番目の関数は、このフィールドへのキーボードまたはマウスのクリックペースト機能を無効にします。
フォームの作成
次に、フォームを作成し、フォームフィールドを追加します。フォームの作成についてサポートが必要な場合は、この役立つチュートリアルをご覧ください。

CSSクラスの追加
次に、制限したいフィールドを選択します。フィールドオプションをクリックし、詳細設定を選択します。
次に、制限したい各フォームフィールドに対して、CSSクラスフィールドにwpf-char-restrictを追加します。このドキュメントの目的上、段落フィールドと1行テキストフィールドの両方に追加します。

これで、ユーザーが特殊文字を入力しようとしたり、フィールドに何かを貼り付けようとしたりすると、画面にアラートメッセージが表示されます。
この例では、ユーザーがコメントフィールドにメールアドレスを挿入しようとしています。

住所の自動入力を特定の国に制限するためにJavaScriptを使用したいですか?住所の自動入力を特定の国に制限する方法に関するチュートリアルをご覧ください。