jspファイルで、JvaScriptを組み込みscriptで
document.getElementById("id_name").innerHTML="<%~%>";
にして、"<%~%>"にJavaの文を書きこみたいと考えていますが上手くいきません。
どうすれば良いでしょうか?
【プログラム】
<select name="table_name2">
<script>
function show_tables()
{
var database_name = document.getElementsByName("database").value;
document.getElementById("option").innerHTML
="<% con = DriverManager.getConnection(\"jdbc:mysql://localhost/"+database_name+"\",\"user_name\",\"pass\");"
+"stmt = con.createStatement();"
+"rs=stmt.executeQuery(\"show tables\");"
+"ArrayList<String>list2=new ArrayList<String>();"
+"while(rs.next())"
+"{"
+"list2.add(rs.getString(\"Database\"));"
+"}"
+"con.close();"
+"stmt.close();"
+"int tables_size = list2.size();"
+"for(int k=0; k < tables_size; k++)"
+"{"
+"out.println(\"<option value=\"+list2.get(k)+\">\"+list2.get(k)+\"</option>\");"
+"}"
+"%>";
}
</script>
<div id='option'></div>
</select>
No.1ベストアンサー
- 回答日時:
<% ~ %> で囲まれた部分は、Java から見ると……
……と解答しようとして、ソースをよく見たら javaScript の変数の値を JSP で利用しようとしていますが、このようなことはできません。
JSP の処理はサーバーで行われ、ブラウザに送られてくるときには JSP のコードは HTML から消えています。
一方、JavaScript の処理はサーバーから HTML が送られた後でブラウザ上で行われます。
つまり、JSP が処理を行おうとしているときには JavaScript の処理はまだ動作していないので、その変数の値を参照しようと思ってもその値が確定していません。
ご説明聞いて、何故できなかったのか自分なりは腑に落ちました。
【考えた解決案】
前もってサーバー側で、出力する可能性のあるものは全て書き出すが、非表示にして、
それをJavaScriptで条件に応じて、必要なもののみを非表示解除という方法で試みたいと思います。
有難うございます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript 以前の質問だと、どの条件でも配列が表示されてしまいます。 1 2022/07/09 11:40
- JavaScript JavascriptからSQLへ繋ぎ方が分からない 3 2022/07/07 00:27
- JavaScript セレクトボックスで配列を呼び出したい。 1 2022/07/08 20:14
- JavaScript セレクトボックスを2つ選択してメッセージなどを表示するには。~運賃検索プログラムを完成させたい~ 1 2022/07/22 11:10
- JavaScript GoogleChart 階層ごとのブロックの長さを個別に設定したい 1 2022/07/06 14:27
- JavaScript console.logがどうしても2つ機能しないのでアドバイスをくださいお願いします 2 2022/07/07 22:13
- JavaScript 電車の運賃を出すプログラムを作っています。 2 2022/06/22 09:36
- JavaScript 2段階プルダウンで1段階目の選択を終えた後に選択ボックスを見えなくしたい 2 2022/07/05 21:58
- JavaScript switch文のswitch(n)の部分を複数の値にするか、if文に変えてほしいです。 1 2022/07/27 17:18
- JavaScript sessionStorageを調べています。 1 2023/06/20 12:41
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
プルダウン 項目が多いので先頭...
-
jspに組込んだJavaScript でjava文
-
セレクトの値を取得できない
-
CSVファイルを読みこみ、プルダ...
-
jQuery セレクトボックスで選択...
-
Selectの中身をfor文で入れる
-
html selectの内容を初期値に戻す
-
現在時刻を取得してフォームのs...
-
onFocusOutが複数回呼ばれる!
-
プルダウンとテキストの連動
-
selectメニューのselectedの位...
-
<textarea>にプルダウンを表示...
-
int select(int n, fd_set *rea...
-
HTMLコンボボックスへの項目追加
-
return trueとreturn falseの用...
-
テキストボックス入力を半角英...
-
【jQuery】input nameの文字列...
-
二つの入力欄に、同時に同じ文...
-
onchangeイベントを強制的に発...
-
<input>の選択肢をプルダウンメ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
プルダウン 項目が多いので先頭...
-
Selectボックスの幅を自動で広...
-
jQuery セレクトボックスで選択...
-
Selectの中身をfor文で入れる
-
html selectの内容を初期値に戻す
-
CSVファイルを読みこみ、プルダ...
-
JQuery selectが反映されない
-
セレクトの値を取得できない
-
セレクトを全て選択されていな...
-
セレクトメニューで選択された...
-
ブラウザの戻るボタンを押した...
-
javascriptでselectボックスの<...
-
リストボックスの項目の順番を...
-
現在時刻を取得してフォームのs...
-
onFocusOutが複数回呼ばれる!
-
セレクトボックスで現在選択さ...
-
【javascript・PHP】プルダウン...
-
document.form で nullまたは...
-
プルダウンで現在の年月日を取...
-
onchange等のイベントハンドラ...
おすすめ情報