1

3 つの入力フィールドがあり、スペースを許可しない短い jquery コードが必要です。

<input id='email' type='email' name='email' />
<input id='username' type='text' name='username' />
<input id='pwd' type='password' name='pwd' />
4

3 に答える 3

1

まず、3にクラスを追加しますinput tags

<input id='email' class='disallow' type='email' name='email' />
<input id='username' class='disallow' type='text' name='username' />
<input id='pwd' class='disallow' type='password' name='pwd' />

これがjQueryです:-

$(document).ready(function() {
    $('.disallow').keypress(function(e) {
        if(e.which === 32) {
            return false;
        }
    });
});


jsfiddle

于 2013-04-28T12:22:10.793 に答える
0

これは、ユーザーがクリップボードから値を貼り付けることによってバイパスできない最初のソリューションです。これは、ユーザーがよく行うことです。

これは、ブラウザ拡張機能を使用してログイン/フォームに入力しているため、ユーザーがバイパスできない最初のソリューションです。

jQueryに言及したので、Validate Pluginを使用したフォーム検証はどうですか?

または、単純な検証が必要な場合は、submit イベントを使用してテストしてみてください。

$('form').on('submit', function () {
    var spaceTest = new RegExp('^[^ \t\r\n\v\f]*$');

    //loop through your desired form elements
    $(this).find('.disallow').each(function () {
        var $this = $(this),
            m = spaceTest.exec($this.val());
        // if it fails your test
        if (m === null) {
            // reject

        } else {
           // accept
        }
    });
});

フィドル

于 2013-04-28T12:50:56.547 に答える