- PR -

C#.Net中のJavaScript 改行を教えていただけないでしょうか

1
投稿者投稿内容
william
会議室デビュー日: 2007/04/25
投稿数: 16
投稿日時: 2007-08-29 19:53
こんにちわ、Williamと申します。

バージョン:C#.Net
状態:今はC#.Net中のJavaScriptを使って、Alertメッセージボックスを出したいので、
でもみっセージが改行できない。

ソース:
//(Scriptで警告メッセージを表示します)
StringBuilder script = new StringBuilder();
//警告ダイアログを表示する。
script.Append("<script type=\"text/javascript\">\n");
script.Append("<!--\n");
script.Append(" if (confirm(\"");
script.Append(" テストaaa").Append("\n");
script.Append(" テストbbb");
script.Append(" テストccc");
script.Append("\"))\n");
script.Append(" {\n");
script.Append(" document.getElementById(\"SearchButton\").click();\n");
//(確認ダイアログで、「はい」が押された場合は、検索ボタン押下を再実行)
script.Append(" }\n else\n {\n");
script.Append(" document.getElementById(\"searchRetryHidden\").value=\"\";\n");
script.Append(" document.getElementById(\"SODateFromText\").focus();\n");
//(キャンセルが押下された場合には、リトライ判定のHidden値をクリアして検索先頭項目にフォーカスを遷移する)
script.Append("}\n");
script.Append("-->\n");
script.Append("</script>");
Page.RegisterStartupScript("searchCheck",script.ToString());

結果: テストaaaテストbbbテストccc
希望は:
テストaaa
テストbbb
テストccc

すみませんですが、私は何でもためましたけど、なかなかうまくできない。
よろしくお願いします。
mio
ぬし
会議室デビュー日: 2005/08/25
投稿数: 734
お住まい・勤務地: 神奈川県
投稿日時: 2007-08-29 20:20
.Netの前に、プレインなHTML上のJavaScriptで、まずは作ってみては。
william
会議室デビュー日: 2007/04/25
投稿数: 16
投稿日時: 2007-08-29 20:47
mioさん、ご返事有難うございます。

でも私が本当に.Netに実現したいですね、如何しますか?

よろしくお願いします。
william
会議室デビュー日: 2007/04/25
投稿数: 16
投稿日時: 2007-08-29 20:47
mioさん、ご返事有難うございます。

でも私が本当に.Netに実現したいですね、如何しますか?

よろしくお願いします。
william
会議室デビュー日: 2007/04/25
投稿数: 16
投稿日時: 2007-08-29 21:24
多分C#中で直接「\n」、「\nn」、「\n\n」だけ使うはだめだな、
他の方法絶対あると思います。
私ががんばります。
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2007-08-29 21:31
出力された HTML を、クライアントで確認すると、どうなっていますか?

check JavaScript on Client side.
i affraid, Yen-mark is escaped, or RETURN-CODE is outputed.
you should output '[BackSlash]n'.
so... "[BackSlash][BackSlash]n"
未記入
大ベテラン
会議室デビュー日: 2005/03/12
投稿数: 148
投稿日時: 2007-08-30 00:30
俺は.NETでWebアプリの経験ないので推測です。

下記を拡張子htmlで保存し

<script type="text/javascript">
confirm("テストaaa\nテストbbb\nテストccc")
</script>

Firefoxで見たらダイアログが現れ

テストaaa
テストbbb
テストccc

[OK] [キャンセル]

と表示されました。

繰り返しになるが俺はwebアプリやってないので推測です。
以下みたいにすればいいのかな。

script.Append("<script type=\"text/javascript\">\n");
script.Append("confirm(\"テストaaa\\nテストbbb\\nテストccc\")"\n);
script.Append("</script>\n");

おれも、出来上がったhtmlをクライアントで確認するのがいいと思う。
あるいは、確認しなくてもクライアントでどうなるか頭の中で判ればいいと思う。
william
会議室デビュー日: 2007/04/25
投稿数: 16
投稿日時: 2007-08-30 10:18
Jittaさん、未記入さん
ご返事有難うございます。
本当に有難うございます。

\\nをすれば、うまくできました。

Thank you very much.
1

スキルアップ/キャリアアップ(JOB@IT)