使用jquery检测所有textarea是否为空

时间:2014-01-26 23:49:30

标签: jquery

如何使用jquery和textareas类“inside”检查一组textareas是否为空?我需要在if 中查看

<textarea id="1" class="inside"></textarea>
<textarea id="2" class="inside"></textarea>
<textarea id="3" class="inside"></textarea>
<textarea id="4" class="inside"></textarea>

4 个答案:

答案 0 :(得分:4)

像这样的东西会这样做

if (! $('.inside').filter(function() {return this.value.length;}).length ) {
   // all empty
}

FIDDLE

过滤掉任何没有值的元素,你可以选择使用trim来考虑空格以及“return $.trim(this.value).length;”,如果选择器没有长度,则没有元素具有值

答案 1 :(得分:2)

您可以使用.is(':empty')进行检查。

EXAMPLE HERE

$('textarea.inside').each(function(){
    if($(this).is(':empty')){
        alert('empty');
    }
});

值得注意的是,每个元素的类不应包含.。此外,id不应以数字开头。

答案 2 :(得分:0)

删除您不需要使用。用于html中的类名。您可以在jquery语法中将它用于选择器。

如果您的所有文本区域都在课堂内,您可以逐个浏览这些文本区域。

使用$('.inside').each(function(){});遍历所有元素并在任何textarea获得文本时更新标志。

答案 3 :(得分:0)

首先,.inside不是有效的类名,不能用作jQuery选择器。将此更改为inside,不带句点。

你可以设置一个真/假变量,看它们是否全为空,然后遍历所有元素并检查它们是否为空(我正在修剪以删除空格)。这是一个例子:

var allEmpty = true;
$('.inside').each(function() {
    if($(this).val().trim() != '')
        allEmpty = false;
});

if(allEmpty)
    alert('All empty!');
else
    alert('One isn\'t empty!');

JSFiddle:http://jsfiddle.net/CFK3c/