Как я могу изменить все входные значения в верхнем регистре с помощью JQuery?
Я хочу изменить все свои значения формы в верхнем регистре до отправки формы.
Пока у меня есть это, но он не работает.
$('#id-submit').click(function () {
var allInputs = $(":input");
$(allInputs).value.toUpperCase();
alert(allInputs);
});
Ответы
Ответ 1
Попробуйте, например,
$('input[type=text]').val (function () {
return this.value.toUpperCase();
})
Вы должны использовать input[type=text]
вместо :input
или input
, поскольку я считаю, что ваше намерение состоит в том, чтобы работать только с текстовым полем.
Ответ 2
используйте css:
input.upper { text-transform: uppercase; }
вероятно, лучше всего использовать стиль и конвертировать серверы. Также есть плагин jQuery для форматирования прописных букв: http://plugins.jquery.com/plugin-tags/uppercase
Ответ 3
$('#id-submit').click(function () {
$("input").val(function(i,val) {
return val.toUpperCase();
});
});
FIDDLE
Ответ 4
Вы можете использовать each()
$('#id-submit').click(function () {
$(":input").each(function(){
this.value = this.value.toUpperCase();
});
});
Ответ 5
Используйте текстовое преобразование css для отображения текста во всех текстах типа ввода.
В JQuery вы можете преобразовать значение в верхний регистр при событии размытия.
Css:
input[type=text] {
text-transform: uppercase;
}
Jquery:
$(document).on('blur', "input[type=text]", function () {
$(this).val(function (_, val) {
return val.toUpperCase();
});
});