Как проверить, есть ли текст ввода пользователем всех пробелов (пробел, табуляция, ввод и т.д.) на стороне клиента?
Спасибо заранее!
Как проверить, есть ли текст ввода пользователем всех пробелов (пробел, табуляция, ввод и т.д.) на стороне клиента?
Спасибо заранее!
Этот вопрос помечен jQuery. В jQuery вы можете запустить следующее:
if ( $.trim( $('#myInput').val() ) == '' )
alert('input is blank');
/^\s+$/.test(userText)
Измените +
на *
, чтобы включить пустую строку ''
в качестве положительного соответствия.
Edit
Чаще всего, хотя вам нужно обрезать пробелы из введенного пользователем текста и просто проверить, не является ли он непустым:
userText = userText.replace(/^\s+/, '').replace(/\s+$/, '');
if (userText === '') {
// text was all whitespace
} else {
// text has real content, now free of leading/trailing whitespace
}
Это также будет работать:
var text = " ";
text.trim().length == 0; //true
Как это...
function isEmpty(str) {
return str.replace(/^\s+|\s+$/g, '').length == 0;
}
Если вы хотите увидеть, содержит ли файл все пробелы или пусто, я бы рекомендовал проверить инверсию и инвертировать результат. Таким образом, вам не нужно беспокоиться о специальных случаях вокруг пустой строки.
все пробелы такие же, как и без пробелов, поэтому:
function isWhitespaceOrEmpty(text) {
return !/[^\s]/.test(text);
}
Если вам не нужны пустые строки, вы можете немного изменить его:
function isWhitespaceNotEmpty(text) {
return text.length > 0 && !/[^\s]/.test(text);
}
Ответ Джоша очень близок к этому, но согласно w3schools (в мае 2014 года) он выглядит следующим образом:
function isEmpty(str) {
return str.replace(/^\s+|\s+$/gm,'').length == 0;
}
Чтобы найти пробелы, сгенерированные JavaScript и между элементами, используйте:
var trimmed = $.trim( $('p').text() );
if ( trimmed === '' ){
//function...
}
Что-то, что сработало для меня:
$("#example_form").validate({
rules: {
example_field: {
required: {
depends: function () {
$(this).val($.trim($(this).val()));
return true;
}
}
},
},
messages: { example_field: {required: "Custom Validation Message for example_field"}, }
});