2011-03-10 131 views
3

jQuery的选择的textarea我想选择基于在他们的价值的textareas,我试着这样做:基于价值

alert($('textarea[value="Type"]').length); 

,但我得到为零。

这里是我的textarea:

<textarea id="Title" name="title" rows="5" cols="29" class="textentry_verdana12pxItalic">Type</textarea> 

我能做到这一点?

回答

5

value不是该textarea的属性。该textarea的HTML属性是id,name,rows,colsclass。试试这个:

$('textarea').filter(function() 
{ 
    return $(this).val() === 'Type'; 
}).length 

.filter() API docs

+0

不说,也正是价值 – 2011-03-10 19:58:52

+2

@andres:但是这正是'值=“Type”选择器的确如此,所以像@Matt所做的那样,结论是合理的,这就是OP所要的。 – treeface 2011-03-10 20:22:06

0

尝试 警报($( 'textarea的:包含( “类型”)')的长度。);

+1

这将返回所有在其值中包含单词“Type”的textarea。我不认为这是OP想要的。 – 2011-03-10 19:52:17

1

使用 “包含” 伪选择:

jQuery('textarea:contains(Type)') 
+0

这将返回所有包含单词“Type”的textarea,它们的值都在任何地方。我不认为这是OP想要的。 – 2011-03-10 19:51:58

+1

没错,它会的。他没有详细说明,所以我放弃了。 – JAAulde 2011-03-10 19:52:47

+1

问题中的选择器意味着“确切地”,无论这是否是有意的。 – 2011-03-10 19:54:11

0

试试这个(contains-selector):

alert($("textarea:contains('Type')").length); 
+0

这将返回所有包含单词“Type”的textareas,其值在任何地方。我不认为这是OP想要的。 – 2011-03-10 19:51:17

+0

并不是说这完全是值 – 2011-03-10 19:59:16

+2

正如我评论[JAAulde的答案](http://stackoverflow.com/questions/5264994/jquery-select-textarea-based-on-value/5265039#5265039):选择器在问题中意味着“完全”。 – 2011-03-10 20:05:02