0

私はいくつかのHTMLを書きました:

<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'));}}});

コンテンツ内で編集されたスパンの値を取得する必要があります。

4

1 に答える 1

0

あなたが提供したコードにはいくつかの問題があります。

まず、構文エラーがありますが、この投稿を作成する際のコピー ペースト エラーが原因であると考えます。

contenteditable属性を div ラッパーに配置しました。これにより、すべてのテキストが編集可能になります...

それ以外ではthis、イベント コールバック内で参照していますが、内部スパンではなく要素thisを参照します。divそう...

  1. コールバックのコードを次のように変更します。

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

  2. Span 要素には value 属性がありません...text()要素のテキスト コンテンツを抽出する関数を探しています。

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

内に複数のスパン要素が#contentboxあるため、テキスト値は両方のスパンのコンテンツになることに注意してください。

これが動作するデモです- 私が使用console.logした理由は...そうですね..私はアラートがあまり好きではありません:P

于 2013-10-24T17:02:18.130 に答える