如何使用javascript验证textarea

如何使用javascript验证textarea,javascript,Javascript,我想检查文本区域是否为空。为此,我编写了以下代码: function validateForm(theForm) { var problem_desc = document.getElementById("problem_desc"); if (problem_desc.value == '') { alert("Please Write Problem Description"); return false; } else {

我想检查文本区域是否为空。为此,我编写了以下代码:

function validateForm(theForm) {
    var problem_desc = document.getElementById("problem_desc");

    if (problem_desc.value == '') {
        alert("Please Write Problem Description");
        return false;
    } else {
        return true;
    }
}​

它第一次运行良好。但是如果我从textarea中删除文本,上面的函数将返回真值,也就是说,它假设我在textbox中输入了前一个文本。有人能告诉我问题出在哪里吗?

请检查此值中是否有空格

if (problem_desc.value.match (/\S/)) { ... } 
或者以其他方式检查长度

 problem_desc.value.length == 0; 

我没弄错。这就是我所做的

  • 单击验证,它说
    请写问题描述
  • 写点什么然后点击。什么也没发生
  • 删除文本。单击验证,它说
    请写问题描述
  • 注意:使用
    trim
    功能消除空白

    代码:
    演示:(也检查空格!)我认为您最好修剪一下,然后检查空格的长度。

    删除空格并计算value属性的长度

    函数验证表单(表单){
    var problem_desc=document.getElementById(“problem_desc”);
    if(问题描述值替换(//g',).length){
    返回true;
    }否则{
    警告(“请写下问题描述”);
    返回false;
    }
    }
    
    
    验证
    它似乎工作得很好:可能与证明你的HTMLYor是正确的@Praveen Kumar有关。我使用trim()方法。但它仍然不起作用。我的trim()方法在函数trim(s){返回s.replace(/^\s*/,“”)。replace(/\s*$/,“”);}@user1407310您可以使用jQuery吗?很高兴它工作了。接受答案,如果你觉得它有用,它会激励我们!:)
    function validateForm(theForm) {
        var problem_desc = document.getElementById("problem_desc");
    
        if ($.trim(problem_desc.value) == '') {
            alert("Please Write Problem Description");
            return false;
        } else {
            return true;
        }
    }