2013-10-24 40 views
0

內編輯我寫了一些HTML:查找其跨度一個div

<div id="contentbox" contenteditable="true"><span value="1">Hello</span><span value="2">Stack</span><span value="3">over</span> flow</div> 

和jQuery

$("#contentbox").live("keyup",function(event){alert(jQuery(this).attr('value'));}}}); 

我需要得到已編輯裏面的內容跨度值。

+3

你還沒有真正在這裏問一個問題...到底是什麼問題? (除了語法錯誤) – Lix

回答

0

您提供的代碼存在一些問題。

首先,你有一個語法錯誤,但我會在創建這篇文章時將其歸因於複製粘貼錯誤。

您已經放置在包裝DIV的contenteditable屬性 - 所以這會使文本編輯的所有 ...

除此之外,你引用的事件回調中this - 但this將引用div元素而不是內部跨度。所以......

  1. 你想改變的代碼在你的回調看起來像這樣:

    alert($(this).find("span").attr('value'))

  2. span元素沒有value屬性...你正在尋找text()函數來提取元素的文本內容。

    alert($(this).find("span").text())

注意,有內#contentbox不止一個span元素,所以文本值將是跨度的內容。

Here is a working demo - 我用console.log因爲...好..我真的不喜歡提醒:P