文字列を取得してテキストエリアに貼り付けるために使用する、この非常に単純な br2nl 関数があります。何らかの理由で、一部の行の端から一部の文字が切り取られています。これが私の例です: http://jsfiddle.net/byZnE/
この例では、「。」が表示されます。(ピリオド) は、テキストエリアの文から削除されています (「情報に関するテストはここに移動できます。」)。なぜこれが起こっているのですか、それを止めるために関数で何を変更できますか?
文字列を取得してテキストエリアに貼り付けるために使用する、この非常に単純な br2nl 関数があります。何らかの理由で、一部の行の端から一部の文字が切り取られています。これが私の例です: http://jsfiddle.net/byZnE/
この例では、「。」が表示されます。(ピリオド) は、テキストエリアの文から削除されています (「情報に関するテストはここに移動できます。」)。なぜこれが起こっているのですか、それを止めるために関数で何を変更できますか?
コードの次の行に問題があります。
return (str + '').replace(/([^>\r\n]?)(\r\n|\n\r|\r|\n)/g, breakTag);
ここで行うことは、行末記号の前の記号 ('>' でない場合) と行末記号自体の両方を置き換えることです。
ただし、修正するのは非常に簡単です。変更するだけです...
return (str + '').replace(/([^>\r\n]?)(\r\n|\n\r|\r|\n)/g, '$1' + breakTag);
そして、私の意見では、ここでstr + ''
は冗長です。