0

xmlファイルからテキストを読み戻すときに構文エラーが発生します。

xmlを作成するために抽出されたデータは、次のコードを使用してメッセージの前に数行を追加し、テキストエリアの上部に入力された応答を許可した後、データベースに保存されました。

$('#message_Text').val(function(index, old) { return '\n\nOriginal Message:\n ' + old ; });

作成されたこのxmlは

<selector>$("#message_Text")</selector>
<message>.attr("value","This is a reply Original Message: Hi There")</message>

コンソールレポート

SyntaxError: unterminated string literal

$("#message_Text").attr("value","This is a reply

私はこれを改行の有無にかかわらず試しました\n違いはありません。

ただし、関数を削除してテキストの最後にメッセージを追加すると、構文エラーが消えます。

では、テキストエリアの上部にスペースを作成しようとすると、テキストエリアに何かが追加されますか?

編集

最後に\n残した元のテストを間違えたため、問題が発生していました。

だから私が今答えようとしている質問は-

データベースに書き込むときに\nを置き換えることができ
ます。これにより、構文エラーが削除されますが、もちろん、textareaはそのレイアウトを保持しません。

明らかに私は今見ます:

Test with newline stripped.<br/><br/>Original Message: <br/>Hi There

もちろん、それらを完全に取り除くこともできます。

しかし、私はそれらをXMLに含め、メッセージの形式を保持する方法が本当に必要です。....私は\nおそらく\n脱出して何が起こるか見てみようと思いますか?

4

1 に答える 1

0

OK、あります。

したがって、テキストエリアの上部に行を導入するには、\nを使用する必要があります。

ただし、\ nテキストエリアに書き戻そうとすると、構文エラーが発生します。

したがって、追加されたphpでデータベースに書き込む前に、\nを\\nでエスケープします。

$ message-> set_Message(str_replace(chr(10)、'\\ n'、$ _POST ['msg']));

これをxmlから読み戻すと、メッセージが正しく作成されました

エスケープされた改行を試してください。

オリジナルメッセージ:

やあ

于 2012-11-27T19:04:43.130 に答える