Javaに関する様々な情報をご紹介します。

Javaに関する様々な情報をご紹介します。
評価

0

windowopenで...

今window openで開いた(子画面)で値を入力して、
登録ボタンを押すと子画面を閉じて親画面を遷移させるということをやっています。

ネットでいろいろ調べてみたのですが良いサンプルや理解できるソースなどがなく、困っています。

ヒントみたなものでもいいので分かる方ご教授お願いします。

19

回答

81645

閲覧

19件の回答

評価

0

よく、他の方も書いてますが、「ネットでいろいろ調べてみたのですが」という文言だと、回答者には伝わりません。

ですので、「良いサンプルや理解できるソース」と言われても提示したサイトが、「良い」と思われなかったり「理解」されなかったりした場合、回答者は回答損となります。

あと、質問の内容は「Javascript」であり「Java」ではありません。

言葉は似てますが、これらはまったく別物ですので「JavaScript掲示板」で質問することをお勧めします。

まあ、「ヒントみたいなもの」ということで「window.opener」「self.close()」あとは「http://www.tohoho-web.com/js/index.htm」かな?

評価

0

よくみたら、「質問内容」が何を聞いているのか解りませんね・・・


「遷移させるということをやっています」と言っていますからその辺りは完成しているように見えます。
「やりたいと思っています」ならまだ「できていない」「やりたいこと」などが解って質問として適してますが。

評価

0

説明が下手ですみません。
今の状態は子画面で入力⇒その子画面がそのまま遷移させたい画面に変わる。という状態です。

させたいことは↓
子画面で入力⇒その子画面が閉じられ⇒
親画面遷移。です。

とりあえず、「window.opener」や「self.close()」
などを調べてみたらいいのでしょうか?

評価

0

>とりあえず、「window.opener」や「self.close()」
>などを調べてみたらいいのでしょうか?

多分、聞く前に自分で調べた方が早いと思いますよ。

評価

0

まずは、「window.opener」や「self.close()」がどんなものかを調べて、そして実装してみてください。
提示したサイトで調べれば理解できるはずです。

理解して実装すれば、求めているものに近づけるはずです。

あと、今後『Javascript掲示板』で質問するときのために補足ですが、必ず自分のブラウザとVersionは提示しましょう。

「IE6」とか「IE7」とか「Netscape6」とか・・・

Javascriptはブラウザに依存しますので、「IE6」では使えるけど「Netscape」では使えないなどがありますから。

評価

0

調べてみてどうにか近いものにはなりました。

ありがとうございます。

>あと、今後『Javascript掲示板』で質問するときのために補足ですが、必ず自分のブラウザとVersionは提示しましょう。

なのですが、自分は家にパソコンもないような人なので
今はまだよく分かりませんが余裕ができましたらVersionなども調べてみます。

あと、追加で質問なんですがフォームの中の<input type=text>などで入力された値をopener.locationでServlet送りたいのですが。どうしたらいいですか?

また、ヒントでもいいのでご教授お願いします。

評価

0

 とおりすがり 
回答内容 >今はまだよく分かりませんが余裕ができましたらVersionなども調べてみます。

Versionは「IE6」の「6」のことです。ブラウザのメニューにある「ヘルプ」⇒「バージョン情報」に載っています。正しく打つなら全部打つのべきなのでしょうが、まあ「6」だけでも十分かと・・・。

>opener.locationでServlet送りたいのですが

location?ひょっとして「location.href = "http://xxx.yyy.zzz/";」のようにしてる? 

評価

0

>location?ひょっとして「location.href = "http://xxx.yyy.zzz/";」のようにしてる? 

こういう風な感じです。
onClick="opener.location = '../srvInsertNewBook';window.close()"

今、postからgetに変えて?name=form.nameのように試しているのですが上手くいきません。


評価

0

やりたいことは
・親画面を遷移させる
・子画面を閉じる

ですよね。

でしたら、子画面でonClick時に親画面にある「<FORM></FORM>」を「submit」したらいいのでは?
そのあと、閉じればいいし。


>?name=form.name

これだと「name」と言う名前で「form.name」という文字列が飛ぶだけです。

評価

0

>でしたら、子画面でonClick時に親画面にある「<FORM></FORM>」を「submit」したらいいのでは?
そのあと、閉じればいいし。

そういう風にできたらいいんですが、どうしていいのか分からない状態です。

ただ普通に<form>でsubmitするとその画面のまま遷移してしまうのでどこかで、"opener."を使えばいいということですか??




>これだと「name」と言う名前で「form.name」という文字列が飛ぶだけです。

確かに文字がとんできてエラーになりました。

評価

0

openerがどういうものかは理解できてますか?

ここで言っている<FORM>は親画面に用意する必要があるのは理解できますか?

子画面で入力した値を親画面の<INPUT type="hidden">に
設定する方法はわかりますか?



あと、そもそもの仕様ですが、子画面で入力した値を、親画面でServletに飛ばしたいと言うことなのですか?

その辺を小出しにされて書かれるとこちらも解答がすっごくしにくいのですが・・・。

正直、「こんなことがしたいんだろうな」という憶測はできます。ですが、その憶測と初心者さんの求めているものが異なると、この会話(応答)が無駄になります。

できれば仕様を箇条書きでもいいので記述してくれると「ヒント」が出しやすいのですが。

評価

0

とおりすがりさん、自分の訳の分からない質問に答えて頂き本当にありがとうございます。

仕様は、子画面で入力した値をServletに飛ばし子画面を閉じまして、そのServletで値をデータベースに登録して、親画面を登録確定画面に遷移させるというものです。

>openerがどういうものかは理解できてますか?
「子画面の呼び出しもとを示す。」と書いていましたのでそう理解しています。

評価

0

話題違いのものが長くなってますよ。
簡単に済むものなら良いですが、そうでなければ誘導して終わりにしないと。

>初心者さん
最初のとおりすがりさんのレスにある

>あと、質問の内容は「Javascript」であり「Java」ではありません。

という一文を、ちゃんと読みましたか?

評価

0

とりあえず、例を上げますがあとはJavaScript掲示板でお願いしますね。
window.opener.name = "MainWindow";
document.MyForm.target = window.opener.name;
document.MyForm.action = "../srvInsertNewBook";
document.MyForm.submit();
self.close();

評価

0

わたしの「2006-12-26 15:13」の回答で終わると思っていたけど、続いて質問されたから思わず答えてあげてましたからねぇ。

たぶん初心者さんは「JSP/Servlet」での作業なのでしょうけどね。

たとえ「JAVA言語」での作業でも、「Javascript」で疑問を持ったなら「Javascript掲示板」へ。「データベース関連(SQL文など)」で疑問を持ったなら「データベース掲示板」へ書込みをするのが普通ですよ。

まあ、tamaさんの回答で答えは見えてきたと思いますけど。

あと、「JAVAとJavascriptの違いは」

http://homepage2.nifty.com/osiete/s456.htm

を見たら解るかな?

評価

0

すみません。もうすこしだけ質問させてください。

問題が解決しましたら、今後はJavaScript掲示板にいきますので。

<SCRIPT LANGUAGE="JavaScript">
<!--
function window() {

    window.opener.name = "MainWindow";
    document.MyForm.target = window.opener.name;
    document.MyForm.action = "../srvInsertNewBook";
    document.MyForm.submit();
    self.close();
}
//-->
</SCRIPT> 


<input type="submit" value=" 登録 " onClick=" retrun window(); ">

このようにしてみました。
がJavaScriptエラーがでます。
もしかして全然検討違いですか?

評価

0

>とりあえず、例を上げますがあとはJavaScript掲示板でお願いしますね。

読めませんでしたか?

評価

0

おや?
奥深く説教をたれていたtamaさんが
だいぶ省略されてきましたね〜

冷酷さは相変わらずですがw
頼もしいものです。
質問者の気持ちをもう少し、
理解してあげましょうよ。

評価

0

質問者の気持ちも大事ですけど、ここでの質問者はJavaで困った人が対象では?
初心者さんのためにも、心を鬼にしてでもルールは守るように教えるべきだと思いますよ。

tomatoさんはもうちょっと言葉を選んだほうがいいですよ。
馬鹿にしているように見えます。

質問から6ヶ月以上経過しているので、回答を書き込むことはできません。