2009-05-31 3 views
1

私はms ajaxでいくつかのデータを操作し、jQuery.val()を使ってテキストボックスに挿入する文字列を返します。残念なことに、テキストボックスは
または\ nのいずれでもintrepしていないので、テキストボックス内のテキストをレンダリングして、それがまだすばらしいようにするにはどうすればよいですか?jQuery textboxとhtml

更新(リクエストによる):私はこれに似たものを使用します。

var sendEmailText = Hi, you found these items<ul><li>Car1</li><li>car2</li></ul><br><br/>Bye!  
jQuery('.CssReceiverMessage').val(sendEmailText); 

を基本的に、それはだけではなく、それを解釈するのhtmlタグを使用してコードを示しています。

答えて

2

おそらくあなたは、スタイル付きメールを送信すると、テキストボックスがメールのテキストが含まれていますしようとしています。私はあなたが2つのことをすることをお勧めします - 最初にDIVを使用してテキストをユーザーに表示します。境界線などが必要な場合は、テキストボックス/領域のように見えるようにスタイルを設定できます。次に、実際にサーバーに返されるデータが隠された入力が含まれます。この方法でディスプレイは好きなように動作しますが、データは送信される電子メールにそのまま渡されます。あるいは、サーバーに電子メールをフォーマットさせ、JSONまたはサーバーが解釈できる他の形式でデータを戻すこともできます。

var sendEmailText = "Hi, you found these items<ul><li>Car1</li><li>car2</li></ul><br><br/>Bye!"  
jQuery('#receiverMessage').val(sendEmailText); 
jQuery('.receiverDisplay').html(sendEmailText); 

<div style="border: 1px solid #0000ff;" class="receiverDisplay"> 
</div> 
<input type="hidden" id="receiverMessage" name="recevierMessage" /> 

編集:ユーザーがメッセージを編集する必要がある場合、別の答えにあなたのコメントによって示されるように、その後、(SO上で使用される)などWMDとしてマークダウンエディタを使用することを検討してください。

1

これは、TextBoxのスパンやdiv要素を使用して使用するのではなく、テキストボックス(<input>要素)

1

でHTMLを使用することはできません。ページにスパンを作成します。

<span id="ReceiverMessage"></span> 

は、その後、あなたのjQueryコードでsendEmailTextにそのHTMLを()に設定します。

jQuery("#ReceiverMessage").html(sendEmailText); 
+0

しかし、ユーザーが自分のコメントを挿入できるようにするためにはテキストボックスが必要ですが、これはスパンではできません。 – Dofs

0

TinyMCEのFCKEditorを使用したことはありますか?どちらも標準のテキストボックスを置き換え、リッチなHTMLエディタを提供します。

+0

私は、ユーザーがメッセージを簡単に編集できるようにしたかっただけです。今私は、ユーザーにメッセージを編集できるようにするか、標準メッセージを送信するかの間で引き裂かれています... – Dofs

関連する問題