1

私は Web アプリケーションに取り組んでいますが、この問題の解決に苦労しています。

次のようなリスト項目があります。

<ul id="list">
    <li>My name is great</li>
    <li>I love Music</li>
    <li>I love EPL</li>
</ul>

私もテキストボックスを持っています。

私がやろうとしているのは、リスト項目を複製またはマップ (どちらが最善の方法でも) し、それをテキスト ボックスの値に追加することです。

要素全体 + テキストがテキストボックスの値に複製されることに注意してください。例えば:

<li>My name is great</li>

テキストボックスの値に複製されます。

4

1 に答える 1

0

テキストボックスに を与えると仮定すると、次のようになりますid

<textarea id="contents"></textarea>

次に、次を使用して jQuery でこれを行うことができます。

$("#contents").val($("#list").html());

説明:

  • $("#list").html()id の要素のHTML コンテンツを取得しますlist
  • $("#contents").val()要素の内容を id に設定しcontentsます。

これに関する 1 つの問題は、html()関数が書式設定を保持する可能性があるため、リスト要素の前にテキストエリア内の一連の空白が表示される可能性があることです。これはブラウザに依存する場合があります。

先頭の空白を削除するソリューション:

$("#contents").val($("#list").html().replace(/^\s+/gm, ""));

これは、JavaScript 正規表現を使用して/^\s+/gm、リスト HTML のすべての行の先頭から空白を削除します。

于 2012-06-26T17:22:55.383 に答える