2010-10-06 71 views
0

我有一个文本框,我写的JavaScript函数,如果它是空白的,那么它会产生alertbox。 但我按该文本框中的空间,然后它不会生成alertbox。如何为此编写javaScript函数?

所以我想,如果我给空间,那么它也会产生警报箱,对于这个怎么办?

我用这个功能:

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作为事件处理程序添加到某个事件中。这是正确的,还是这是你所有的JavaScript? – 2010-10-06 14:28:11

回答

3

您正在将DOM对象传递给您的函数,但打算传递该文本框的值。替换此行:

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

由:

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

谢谢先生,我犯了错误。现在它的工作正常。 – Shalni 2010-10-06 14:28:54

0

更换

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 2010-10-06 14:33:58

+0

@Lekensteyn:你说得对。长度不是函数,而是字符串对象的属性。我已经相应地更改了代码。 – 2010-10-06 14:43:05