2015-10-09 82 views
4

我有2種<textarea>如何選擇某種元素?

1)文章:id="textarea-post-{id}"

2)點評:id="textarea-cmnt-{id}"

例如,下面是在頁面的所有textarea

<textarea id="textarea-post-1"></textarea> 
<textarea id="textarea-cmnt-1"></textarea> 
<textarea id="textarea-cmnt-2"></textarea> 
<textarea id="textarea-cmnt-3"></textarea> 
<textarea id="textarea-post-2"></textarea> 
<textarea id="textarea-cmnt-4"></textarea> 
<textarea id="textarea-cmnt-5"></textarea> 
<textarea id="textarea-post-3"></textarea> 
<textarea id="textarea-cmnt-6"></textarea> 

好好吧,現在我想知道,我怎樣才能選擇所有帖子 textarea? 這些:

<textarea id="textarea-post-1"></textarea> 
<textarea id="textarea-post-2"></textarea> 
<textarea id="textarea-post-3"></textarea> 
+0

您是否嘗試過? –

+0

@SheraliTurdiyev其實我只是可以選擇像這樣的所有textarea:'$('textarea')',或者像這樣的特定的id:'$('#textareaid')'。 – Shafizadeh

+3

如果你給'textarea-post- {id}'類'textarea-post'和'textarea-cmnt- {id}''textarea-cmnt'類,你可以使用'$(「。textarea-post」) ' – Halcyon

回答

6

您可以使用CSS選擇器與querySelectorAll這樣的:

document.querySelectorAll('[id^="textarea-post"]'); 

^=運營商將尋找每一個元素與開始textarea-post的ID。

jQuery的版本:

$('[id^="textarea-post"]'); 
+0

謝謝,+ 1upvote給你。 – Shafizadeh

1

這是你在找什麼$('[id^="textarea-post-"]')。 以選擇器^=開始是適合您的案例。

+0

謝謝,+ 1upvote給你。 – Shafizadeh

+0

不客氣! –

0

通過使用[屬性$ =值] CSS的CSS非常簡單,選擇器將做到這一點。

textarea[id$="post"]{ 
color:red 
} 
textarea[id$="cmnt"]{ 
color:blue 
} 
+0

我說的是js(或jquery),而不是css – Shafizadeh

3

console.log($('textarea[id*=post]'));
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script> 
 
<textarea id="textarea-post-1"></textarea> 
 
<textarea id="textarea-cmnt-1"></textarea> 
 
<textarea id="textarea-cmnt-2"></textarea> 
 
<textarea id="textarea-cmnt-3"></textarea> 
 
<textarea id="textarea-post-2"></textarea> 
 
<textarea id="textarea-cmnt-4"></textarea> 
 
<textarea id="textarea-cmnt-5"></textarea> 
 
<textarea id="textarea-post-3"></textarea> 
 
<textarea id="textarea-cmnt-6"></textarea>

+0

謝謝,+ 1upvote給你。 – Shafizadeh

2

這是howw選擇與id值所有的textarea與textarea-post-開始:

$("textarea[id^='textarea-post-']") 

同樣,

$("textarea[id^='textarea-cmnt-']") 

工作實例:

console.log($("textarea[id^='textarea-post-']")); // outputs all textarea with `id` value starting with `textarea-post-`.
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script> 
 
<textarea id="textarea-post-1"></textarea> 
 
<textarea id="textarea-cmnt-1"></textarea> 
 
<textarea id="textarea-cmnt-2"></textarea> 
 
<textarea id="textarea-cmnt-3"></textarea> 
 
<textarea id="textarea-post-2"></textarea> 
 
<textarea id="textarea-cmnt-4"></textarea> 
 
<textarea id="textarea-cmnt-5"></textarea> 
 
<textarea id="textarea-post-3"></textarea> 
 
<textarea id="textarea-cmnt-6"></textarea>

+0

謝謝,+ 1upvote給你。 – Shafizadeh

2
$('[id^="textarea-post-"]').each(function() { 
    $(this).val(); 
}); 

這將讓所有textarea-post-然後itterate通過每一個,並獲得價值$(this).val();

+0

謝謝,+ 1upvote給你。 – Shafizadeh

3

檢查。

$('textarea[id^="textarea-post"]').click(function(){ 
 
    $(this).css('background-color', 'green'); 
 
});
textarea[id^="textarea-post"]{ 
 
\t \t background-color:red; 
 
\t }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<textarea id="textarea-post-1"></textarea> 
 
<textarea id="textarea-cmnt-1"></textarea> 
 
<textarea id="textarea-cmnt-2"></textarea> 
 
<textarea id="textarea-cmnt-3"></textarea> 
 
<textarea id="textarea-post-2"></textarea> 
 
<textarea id="textarea-cmnt-4"></textarea> 
 
<textarea id="textarea-cmnt-5"></textarea> 
 
<textarea id="textarea-post-3"></textarea> 
 
<textarea id="textarea-cmnt-6"></textarea>

+1

謝謝,+ 1upvote給你。 – Shafizadeh

0

你可以使用jQuery lib和使用它的功能 Jquery library link here

$(‘p:nth-child(3)) \t gets the 3rd <p> element of the parent. n=even, odd too.
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.2.3/jquery.min.js"></script>

代替對使用的textarea的

相關問題