2010-10-06 2 views
0

У меня есть текстовое поле, и я пишу функцию javascript, которая, если она пустая, будет генерировать alertbox. но я нажимаю пробел в этом текстовом поле, тогда он не генерирует alertbox.Как написать функцию javaScript для этого?

, так что я хочу, чтобы, если я даю пространство, тогда он также генерирует alertbox, для этого, что делать?

Я использовал эту функцию:

function Trim(objValue) { 
    var lRegExp = /^\s+/; 
    var rRegExp = /\s+$/; 
    objValue = objValue.replace(lRegExp, ''); //Perform LTRim 
    objValue = objValue.replace(rRegExp, ''); //perform RTrim 
    return objValue; 
} 
function ValidateTextBoxIncome() { 
    var txtEnterItems = document.getElementById("txtEnterItems"); 
if (Trim(txtEnterItems) == '') { 
     alert("Cannot be blank"); 
     return false; 
    } 
} 

где есть ошибка? пожалуйста, предложите мне.

+0

Я предполагаю, что вы фактически добавляете ValidateTextBoxIncome в качестве обработчика события на какое-то событие. Это правильно, или это все, что у вас есть? –

ответ

3

Вы передаете объект DOM своей функции, но должны передать значение этого текстового поля. Заменить строку:

if (Trim(txtEnterItems) == '') { 

по:

if (Trim(txtEnterItems.value) == '') { 
+0

Спасибо, сэр, я сделал ошибку. Теперь его работа отлично. – Shalni

0

Replace

var txtEnterItems = document.getElementById("txtEnterItems"); 

с

var txtEnterItems = document.getElementById("txtEnterItems").value; 
0

Попробуйте следующее:

function ValidateTextBoxIncome() { 
    var txtEnterItems = document.getElementById("txtEnterItems"); 
    if (Trim(txtEnterItems.value).length == 0) { 
     alert("Cannot be blank"); 
     return false; 
    } 
} 
+0

Я никогда не видел упоминания о структуре, такой как jQuery, поэтому я ожидаю чистый Javascript. 'String.length' не является функцией. – Lekensteyn

+0

@ Lekensteyn: Вы правы. length - это не функция, а свойство для строкового объекта. Я изменил код соответственно. –

Смежные вопросы