
javaの初心者です。フレームワークはSpringを使って開発しています。
Javaで改行の入った文字列をjspファイルでJava scriptでメッセージボックスに表示させたいのですが、「1行目\n2行目」と表示されてしまい、改行されません。
ソースを抜粋したものは、下記のとおりです。
コントローラ
@RequestMapping(value = "/pm", params = "nyuko", produces = "text/plain;charset=UTF-8", method = RequestMethod.POST)
public String nyuko(@ModelAttribute FormNyuko formNyuko, Model model, HttpServletRequest request,
HttpServletResponse response, HttpSession session, Map<String, String> map)
throws ServletException, IOException {
String CRLF = "\n";
ErrorMessage = "1行目" + CRLF
ErrorMessage = ErrorMessage + "2行目"
map.put("ErrorMessage", ErrorMessage);
}
JSPファイル
<SCRIPT type="text/javascript">
function onLoad(){
if("${ErrorMessage}" != ""){
alert("${ErrorMessage}");
}
}
</script>
</head>
<body onLoad="onLoad()" bgcolor="#FFDAB9">
うまく改行させる方法を、どなかたご教授いただければ幸いです。
No.2ベストアンサー
- 回答日時:
No.1です。
一応、
<html>
<head>
<title>alear test</title>
<SCRIPT type="text/javascript">
function onLoad(){
if ("1行目\n2行目" != "") {
alert("1行目\n2行目");
}
}
</script>
</head>
<body onLoad="onLoad()" bgcolor="#FFDAB9">
body
</body>
</html>
という内容のhtmlファイルを作って、ブラウザで表示してみて大丈夫だったので、回答してしまったのですが、よく考えてみると、サーブレット側で
String CRLF = "\n";
とすると、function onLoadの部分が、
function onLoad(){
if ("1行目
2行目" != "") {
alert("1行目
2行目");
}
}
となってしまうかも知れませんね。
これは、改行がほんとの改行になってしまって、改行文字(\n)の指定にならなくなってしまうからです。
なので、
String CRLF = "\\n";
としてみてください。
これで、"\n"が"\n"のまま出力されます。
度重なる質問に対して、丁寧にご回答いただき、ありがとうございます!
とてもよく理解でき、解決することができました。
3日程職場でずっと悩んでいたので、助かりました。
ありがとうございました!
No.1
- 回答日時:
これって、まさかと思うけど、"\n"を全角のバックスラッシュにしていませんか?
ここで質問するために、あえて全角のバックスラッシュ(\)にしているだけならいいのですが、本番では半角のバックスラッシュ(\:環境によっては半角の円記号になる)にしないと改行されませんよ。
String CRLF = "\n";
回答ありがとうございます!
実は、半角のバックスラッシュにもしてみました("\n"となりました)が、
それだと、メッセージボックスすら出ないのです。
ちなみに、エラーの画面にもなりません。
やはり、本来は"\n"だとすると、Java script内にバグがあるのでしょうか。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript Javascriptが機能せず原因が分からないので教えて頂きたいです 3 2023/06/04 14:50
- JavaScript javascriptのちょっとした動作不良(原因は突き止めたのですが) 1 2023/06/15 19:58
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- CGI perlで書いたcgiでsqliteの使い方を教えてください 2 2023/05/08 21:29
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/07 21:04
- HTML・CSS ボタンをクリックした時に、入力フォームのすぐ下部に、「入力欄が空白です」というテキストメッセージが表 1 2022/04/27 16:25
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 1 2023/08/09 10:33
- PowerPoint(パワーポイント) エクセルのマクロについて教えてください。 1 2023/01/20 14:36
- JavaScript フォームが空欄の時にフォームの外をクリックすると、エラーが出るコードを調べています。 1 2023/06/25 11:51
- JavaScript HTMLでJavaScriptを使ってパスワードの強化判定のプログラムを作成しています。 一通り作っ 2 2022/10/19 01:41
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBAのコマンドボタンの文字列の...
-
エスケープ文字の復帰(¥r)と...
-
jsp 改行コードで改行させて表...
-
ソースコードの1行が長いとき...
-
エクセルVBA 文字列領域が不足...
-
"の前に\\がついてしまいます
-
【VBA】エクセルで最後の不要な...
-
改行コードが半角スペースにな...
-
C# DataGridViewのセルを改行禁...
-
LaTeX: captionの中で改行した...
-
改行について
-
C++でのCRLFについて
-
VB6 TextBoxの先頭が自動改行...
-
改行コードを入れるにはどうす...
-
aspで作成するcsvファイルで、e...
-
delphi でのコード上でTab を入...
-
最終行の改行について
-
COBOLの改行
-
テキストファイル内の改行について
-
リッチエディットコントロール...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAのコマンドボタンの文字列の...
-
ソースコードの1行が長いとき...
-
エスケープ文字の復帰(¥r)と...
-
改行について
-
エクセルVBA 文字列領域が不足...
-
最終行の改行について
-
テキストボックス行の桁数を制...
-
【VBA】エクセルで最後の不要な...
-
awkで改行を除いて文字列を抜き...
-
グレープシティのSPREAD...
-
VBAでCSVをExcelに取り込む時に...
-
秀丸の正規表現で複数行にわた...
-
C# DataGridViewのセルを改行禁...
-
JavaMail,本文中の改行について
-
テキストファイルから改行コー...
-
vb.netでのリッチテキストボッ...
-
ラベル(スタティックテキスト)...
-
jsp 改行コードで改行させて表...
-
COBOLの改行
-
文字列型変数に1024を超えた文...
おすすめ情報