2012-08-13 37 views
-1

點擊後選擇文本到目前爲止,我有這樣的:上的按鈕

<span class="description">Description 1</span> 
<button class="select">Select!</button> 

<span class="description">Description 2</span> 
<button class="select">Select!</button> 

<span class="description">Description 3</span> 
<button class="select">Select!</button> 

<span class="description">Description 4</span> 
<button class="select">Select!</button> 

我想按鈕,選擇裏面的文字「說明」類元素,但僅限於前一個。那可能嗎?也就是說,如果用戶點擊第一個選擇按鈕,將選擇說明1。

注:在選擇中,我的意思是文本應該突出顯示。在此先感謝

+0

代碼那麼短,失誤那麼多! UFF! – Amberlamps 2012-08-13 11:45:21

+0

我只是複製粘貼文本多次,並沒有看ID,所以對多個ID感到抱歉 – George 2012-08-13 11:51:31

回答

2

使用prev()獲得前一個元素:

$("button").click(function(){ 
     var text = $(this).prev().text(); 
     alert(text); 
}); 

見演示:http://jsfiddle.net/maxdK/

+0

偉大的,謝謝,但我希望它突出顯示文本,而不是提醒它。因此,該用戶可以右鍵單擊並複製選定的文本 – George 2012-08-13 11:39:01

+0

@GeorgeLubaretsi,http://stackoverflow.com/questions/985272/jquery-selecting-text-in-an-element-akin-to-highlighting-with-your-mouse – Adi 2012-08-13 11:41:19

+1

@GeorgeLubaretsi這回答你的問題,你的問題沒有提到文字應該突出顯示。您可以簡單地刪除警報部分。 – undefined 2012-08-13 11:43:15

1

來突出顯示文本你可以改變文本的樣式,也可以應用任何CSS屬性像
$(本).prev()的CSS( 「背景色」, 「紅」);

,或者你可以添加任何CSS

$(this).prev().addClass("css-class");