2013-03-20 2 views
4

У меня есть следующие оболочки JQuery, который работает:Как удалить пробелы из ввода текста

$('.jq_noSpaces').on('change', function(){ 
    alert('you changed the value in the box'); 
    }); 

Мои атрибуты формы являются id="username" name="username"

Как использовать следующую функцию JQuery заменить автоматически изменяет удалить пробелы из поля ввода?

str.replace(/\s+/g, ''); 

Благодаря

ответ

11

Вы можете использовать синтаксис:

$(this).val($(this).val().replace(/\s+/g, '')); 

Внутри обработчика событий.

+0

Cool @TomWalters, я попробую сейчас. –

+0

@Diodeus Да, я просто заметил это! –

+0

у него отсутствует правый парик где-то - я думаю (или так Dreamweaver кричит на меня об этом) –

3

Заменить содержимое вашего ящика в обработчик событий

this.value = this.value.replace(/\s+/g, ''); 
2

Нет необходимости в JQuery вообще ... просто сделать this.value = this.value.replace(/s+/g, '');

+1

Это заменит только первое найденное пространство, вы должны добавить глобальный флаг: '//g' –

+0

@TomWalters: Хороший звонок. Ред. – Travesty3

0
$('.jq_noSpaces').on('change', function(){ 
    $(this).val($(this).val().replace(/\s+/g,"")) //thanks @Sushil for the reminder to use the global flag 
    alert('you changed the value in the box'); 
}); 

или, как другие говорили, вы на самом деле не нужно jQuery вообще. Хотя я все равно использую его. Все действительно классные кодеры.

Смежные вопросы