ユーザー定義のテキストをデータベースに保存するASP複数行テキストボックスがあります。データを取得するときは、データをxmlにシリアル化し、XSL変換を実行してHTMLを出力します。
変換内で、要素のonclickイベントを介して、テキストボックスで定義されたデータをjavascript関数に渡します。
私が直面している問題...ユーザーがキャリッジリターンをテキストボックスに入力してデータベースに保存すると、ページの読み込み時にJavaScriptエラーが生成されます。
XslCompiledTransform
変換には.NETを使用しています。XmlDocument
と呼ばれるプロパティがありPreserveWhiteSpace
ます。デフォルトはfalseで、XMLの空白を取り除くように設定できます。これにより、ユーザーが改行テキストを入力できないという問題が解決されますが、クライアントは、入力したテキストのフォーマットを可能な限り保持したいと考えています。
私の知る限り、.NETXslCompiledTransform
はキャリッジリターン-改行を。に変換し

ます。これらはjavascriptを壊している文字だと思います。
私の最初の考えは、文字列をjavascript関数に渡す前に、xsl内のキャリッジリターンを取り除くことでしたが、文字列を「検索」する文字を特定できませんでした。
別の質問は、ASP.NETテキストボックスコントロール内からのキャリッジリターンのためにSQLにどの文字が格納されるかということだと思います。
データベース内のデータを直接見ると、SQLは文字を「表示できない」文字または(2つの空のボックス)として表示しているように見えます。
誰かがこの種のことを経験したことがありますか?