2013-07-16 2 views
-1

Например, у меня было бы поле под названием «email_address» в форме и со следующим кодом, оно должно иметь возможность изменить его на нижний регистр. Я тестировал его в консоли chromes, и он показывает изменение, но не в реальной форме.JQuery toLowerCase не работает

$('input[name=email_address]').val().toLowerCase(); 

Заранее благодарен!

+2

Нет такой вещи, как _ "jQuery toLowerCase" _. 'toLowerCase()' является частью JavaScript **, а не ** jQuery ... – War10ck

ответ

4

Вам нужно установить значение обратно на элемент:

var $input = $('input[name=email_address]'); 
var lowerCaseValue = $input.val().toLowerCase(); 

$input.val(lowerCaseValue); 
+1

+1 для оптимизации и сохранения объекта jQuery. – War10ck

+0

Это работает, но только когда я делаю это в консоли. Мне нужен триггер? – TutTut

+0

Это должно работать независимо. Все зависит от того, когда вы вызываете этот код. Без окружающего контекста трудно сказать, почему это не работает для вас. –

3

Вы должны назначить его обратно

obj = $('input[name=email_address]');  
obj.val(obj.val().toLowerCase()); 
+0

+1 для оптимизации и сохранения объекта jQuery. – War10ck

0

Можно также допускается только строчные символ с использованием событий:

$('input[name=email_address]').on('keyup blur',function(){ 
    $(this).val($(this).val().replace(/[^a-z]/g,'')); } 
); 
Смежные вопросы