В php существует такая функция как trim(), обрезающая пробельные символы в начале или конце передаваемой строки. Её обычно используют для того чтобы отсеять пустые, не информативные, символы. Я trim часто использую для того чтобы провалидировать данные, введенные пользователем. К примеру, введенный текст должен быть не пустым, и не иметь просто набор пробельных символов, не отображаемых при выводе.
Данные часто приходится валидировать и на стороне клиента, если у вас есть поле required. Просто проверять по длинне строки - некорректно. В проверке должны отсеиваться все пробельные символы в начале и в конце строки, а уже потом проверяться его длинна. К несчастью, аналога функции trim() в JS нет, но зато есть такая мощная штука, как регулярные выражения.
Функция trim() в JavaScript будет выглядеть следующим образом:
replace(/^\s+|\s+$/g, '')
Тогда валидация с правилом required на поле с именем text формы post_form может принять следующий вид:
if ( $("#post_form [name=text]").val().replace(/^\s+|\s+$/g, '').length < 1 ) {
//show error message;
}