2012-03-13 4 views
-2

как проверить, есть ли в моем текстовом поле только пробелы? Я проверял пустое текстовое поле, но как я могу проверить для текстового поля только пробелы.проверить только текстовое поле

Я хочу, чтобы текстовое поле было похоже на пустое текстовое поле, если введенная строка - это пробелы.

Спасибо.

+2

** Такой ленивый вопрос ** .... включить некоторые из текущего кода ... включают некоторые примеры ввода и ожидаемого результата ... и хотите ли вы это на PHP или на JavaScript? – ManseUK

+0

[Trim] (http://stackoverflow.com/questions/498970/how-do-i-trim-a-string-in-javascript) значение перед проверкой его содержимого. –

ответ

0

Всегда подрезать значение текстовых полей, таким образом, вы никогда не должны проверять на пространстве, например, (с помощью JQuery):

var value = $.trim(('#theId').val()); 
0

Попробуйте с помощью этой функции:

function validate() { 
    var field = document.getElementById("myField"); 
    if (field.value.replace(/ /g, "").length == 0) { 
     alert("Please enter some data (not spaces!)"); 
    } 
} 
0

справочных из steven levithan blog on Faster javascript trim

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

<script type='text/javascript'> 

function validate() 
{ 
    var str= document.getElementById('str').value; 

    if(str== '' || trim(str) == '') 
    { 
     alert('Invalid string'); 
     return false; 
    } 
    else 
    { 
     return true; 
    } 
} 
function trim (str) { 
    str = str.replace(/^\s+/, ''); 
    for (var i = str.length - 1; i >= 0; i--) { 
     if (/\S/.test(str.charAt(i))) { 
      str = str.substring(0, i + 1); 
      break; 
     } 
    } 
    return str; 
} 
</script> 
+0

Мне интересно, почему вы не использовали очевидную 'str = str.replace (/^\ s + /, '') .replace (/ \ s + $ /, '');'. Вместо этого вы удаляете только пробелы с регулярным выражением и используете цикл для конечных пробелов, где тест даже отрицательный. (\ S вместо \ s). Это немного усложняет чтение. – Leif

+0

@Leif 'http: // blog.stevenlevithan.com/archives/fast-trim-javascript' blog.stevenlevithan.com - Быстрее JavaScript Trim –

+0

Это потрясающе. Вы должны упомянуть об этом в своем ответе. – Leif

0

Если я понять ваш вопрос правильно, вы ищете что-то вроде этого:

function consistsEntirelyOfWhitespace(textBox) { 
    return (textBox.value.match(/^\s+$/) !== null); 
}